Module io.helidon.inject.tools
Package io.helidon.inject.tools.spi
Enum Class InterceptorCreator.Strategy
- All Implemented Interfaces:
Serializable
,Comparable<InterceptorCreator.Strategy>
,Constable
- Enclosing interface:
InterceptorCreator
The strategy applied for resolving annotations that trigger interception.
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionAll annotations marked asRetentionPolicy.RUNTIME
will qualify, which implicitly will also cover all usages ofEXPLICIT
.A call toInterceptorCreator.allowListedAnnotationTypes()
will be used to determine which annotations qualify.Applies a blend ofEXPLICIT
andCUSTOM
to determine which annotations qualify (i.e., if the annotation is not explicitly marked, then a call is still issued toInterceptorCreator.isAllowListed(io.helidon.common.types.TypeName)
.A call toInterceptorCreator.isAllowListed(io.helidon.common.types.TypeName)
will be used on a case-by-case basis to check which annotation types qualify.Meta-annotation based.No annotations will qualify in triggering interceptor creation. -
Method Summary
Modifier and TypeMethodDescriptionstatic InterceptorCreator.Strategy
Returns the enum constant of this class with the specified name.static InterceptorCreator.Strategy[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
EXPLICIT
Meta-annotation based. Only annotations annotated withInterceptedTrigger
will qualify. -
ALL_RUNTIME
All annotations marked asRetentionPolicy.RUNTIME
will qualify, which implicitly will also cover all usages ofEXPLICIT
. -
ALLOW_LISTED
A call toInterceptorCreator.allowListedAnnotationTypes()
will be used to determine which annotations qualify. The implementation may then cache this result internally for optimal processing. -
CUSTOM
A call toInterceptorCreator.isAllowListed(io.helidon.common.types.TypeName)
will be used on a case-by-case basis to check which annotation types qualify. -
NONE
No annotations will qualify in triggering interceptor creation. -
BLENDED
Applies a blend ofEXPLICIT
andCUSTOM
to determine which annotations qualify (i.e., if the annotation is not explicitly marked, then a call is still issued toInterceptorCreator.isAllowListed(io.helidon.common.types.TypeName)
. This strategy is typically the default strategy type in use.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-