@Retention(value=RUNTIME)
@Target(value=TYPE)
@Inherited
public @interface FileStatefulCheck
This annotation means that the check contains file-related context and therefore
cannot be used from the others threads at the same time.
This annotation should be used when the check holds a thread-unsafe state.
Checker guarantees that the whole file processed inside the same thread.
Checker guarantees that the whole file processed with the same check instance.
Checker guarantees that each check instance processes only one file at the same time.
Checker guarantees that all check instances have equal (but not the same) configuration.
It means, that if a check holds a property of type "array of strings",
the property value will not be shared across check instances.
Instead, each check instance will hold its own array instance.
Checker does not guarantee that each file will have it's own thread -
there might be a list of files, which will be executed on the same thread.
Checker does not guarantee that each file will have it's own check instance -
there might be a list of files, which will be checked by the same instance.
Note: Checks with such annotation will be executed in mode how all Checks worked
before MT mode is introduced.
- Author:
- Andrew Kuchev