Package com.scivicslab.pojoactor.core
Class ActionAnnotationProcessor
java.lang.Object
javax.annotation.processing.AbstractProcessor
com.scivicslab.pojoactor.core.ActionAnnotationProcessor
- All Implemented Interfaces:
Processor
@SupportedAnnotationTypes("*")
@SupportedSourceVersion(RELEASE_21)
public class ActionAnnotationProcessor
extends AbstractProcessor
Compile-time annotation processor for @Action annotation.
This processor validates that @Action is only used on:
- Subclasses of base classes registered via
ActionBaseClassProviderSPI - Interface default methods (mixin pattern)
Base classes are discovered at compile time via ServiceLoader.
Libraries that define action-compatible base classes (e.g., Turing-workflow's IIActorRef)
register themselves by implementing ActionBaseClassProvider and listing it in
META-INF/services/com.scivicslab.pojoactor.core.ActionBaseClassProvider.
- Since:
- 2.15.0
- Author:
- devteam@scivicslab.com
-
Field Summary
Fields inherited from class javax.annotation.processing.AbstractProcessor
processingEnv -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanprocess(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) Methods inherited from class javax.annotation.processing.AbstractProcessor
getCompletions, getSupportedAnnotationTypes, getSupportedOptions, getSupportedSourceVersion, init, isInitialized
-
Constructor Details
-
ActionAnnotationProcessor
public ActionAnnotationProcessor()
-
-
Method Details
-
process
- Specified by:
processin interfaceProcessor- Specified by:
processin classAbstractProcessor
-