Class FunctionManifestProcessor
java.lang.Object
javax.annotation.processing.AbstractProcessor
io.nosqlbench.virtdata.api.processors.FunctionManifestProcessor
- All Implemented Interfaces:
Processor
@SupportedOptions("title")
@SupportedSourceVersion(RELEASE_23)
@SupportedAnnotationTypes({"io.nosqlbench.virtdata.api.annotations.ThreadSafeMapper","io.nosqlbench.virtdata.api.annotations.PerThreadMapper"})
public class FunctionManifestProcessor
extends AbstractProcessor
This annotation processor is responsible for finding all annotated functions and adding
them to the manifest file for the current project.
Specifically, any class annotated as
ThreadSafeMapper
or PerThreadMapper are recorded in
classes/META-INF/functionsThis operates slightly differently than the service loader facility. The point is to enumerate candidate functions without requiring them to have a no-args constructor.
-
Field Summary
Fields inherited from class javax.annotation.processing.AbstractProcessor
processingEnv -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidinit(ProcessingEnvironment processingEnv) booleanprocess(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) Methods inherited from class javax.annotation.processing.AbstractProcessor
getCompletions, getSupportedAnnotationTypes, getSupportedOptions, getSupportedSourceVersion, isInitialized
-
Constructor Details
-
FunctionManifestProcessor
public FunctionManifestProcessor()
-
-
Method Details
-
init
- Specified by:
initin interfaceProcessor- Overrides:
initin classAbstractProcessor
-
process
- Specified by:
processin interfaceProcessor- Specified by:
processin classAbstractProcessor
-