Package org.mapstruct.ap.internal.util
Class AnnotationProcessorContext
- java.lang.Object
-
- org.mapstruct.ap.internal.util.AnnotationProcessorContext
-
- All Implemented Interfaces:
MapStructProcessingEnvironment
public class AnnotationProcessorContext extends java.lang.Object implements MapStructProcessingEnvironment
Keeps contextual data in the scope of the entire annotation processor ("application scope").
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classAnnotationProcessorContext.FaultyDelegatingIterator
-
Field Summary
Fields Modifier and Type Field Description private AccessorNamingUtilsaccessorNamingprivate AccessorNamingStrategyaccessorNamingStrategyprivate java.util.List<AstModifyingAnnotationProcessor>astModifyingAnnotationProcessorsprivate BuilderProviderbuilderProviderprivate booleandisableBuilderprivate javax.lang.model.util.ElementselementUtilsprivate EnumMappingStrategyenumMappingStrategyprivate java.util.Map<java.lang.String,EnumTransformationStrategy>enumTransformationStrategiesprivate booleaninitializedprivate javax.annotation.processing.Messagermessagerprivate javax.lang.model.util.TypestypeUtilsprivate booleanverbose
-
Constructor Summary
Constructors Constructor Description AnnotationProcessorContext(javax.lang.model.util.Elements elementUtils, javax.lang.model.util.Types typeUtils, javax.annotation.processing.Messager messager, boolean disableBuilder, boolean verbose)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.util.List<AstModifyingAnnotationProcessor>findAstModifyingAnnotationProcessors(javax.annotation.processing.Messager messager)AccessorNamingUtilsgetAccessorNaming()AccessorNamingStrategygetAccessorNamingStrategy()java.util.List<AstModifyingAnnotationProcessor>getAstModifyingAnnotationProcessors()BuilderProvidergetBuilderProvider()javax.lang.model.util.ElementsgetElementUtils()Returns an implementation of some utility methods for operating on elementsEnumMappingStrategygetEnumMappingStrategy()java.util.Map<java.lang.String,EnumTransformationStrategy>getEnumTransformationStrategies()javax.lang.model.util.TypesgetTypeUtils()Returns an implementation of some utility methods for operating on types.private voidinitialize()Method for initializing the context with the SPIs.
-
-
-
Field Detail
-
astModifyingAnnotationProcessors
private java.util.List<AstModifyingAnnotationProcessor> astModifyingAnnotationProcessors
-
builderProvider
private BuilderProvider builderProvider
-
accessorNamingStrategy
private AccessorNamingStrategy accessorNamingStrategy
-
enumMappingStrategy
private EnumMappingStrategy enumMappingStrategy
-
initialized
private boolean initialized
-
enumTransformationStrategies
private java.util.Map<java.lang.String,EnumTransformationStrategy> enumTransformationStrategies
-
accessorNaming
private AccessorNamingUtils accessorNaming
-
elementUtils
private javax.lang.model.util.Elements elementUtils
-
typeUtils
private javax.lang.model.util.Types typeUtils
-
messager
private javax.annotation.processing.Messager messager
-
disableBuilder
private boolean disableBuilder
-
verbose
private boolean verbose
-
-
Method Detail
-
initialize
private void initialize()
Method for initializing the context with the SPIs. The reason why we do this is due to the fact that when custom SPI implementations are done and users don't setproc:nonethen our processor would be triggered. And this context will always get initialized and the SPI won't be found. However, if this is lazily evaluated it won't be a problem, as in the SPI implementation module there won't be any processing done.
-
findAstModifyingAnnotationProcessors
private static java.util.List<AstModifyingAnnotationProcessor> findAstModifyingAnnotationProcessors(javax.annotation.processing.Messager messager)
-
getElementUtils
public javax.lang.model.util.Elements getElementUtils()
Description copied from interface:MapStructProcessingEnvironmentReturns an implementation of some utility methods for operating on elements- Specified by:
getElementUtilsin interfaceMapStructProcessingEnvironment- Returns:
- element utilities
-
getTypeUtils
public javax.lang.model.util.Types getTypeUtils()
Description copied from interface:MapStructProcessingEnvironmentReturns an implementation of some utility methods for operating on types.- Specified by:
getTypeUtilsin interfaceMapStructProcessingEnvironment- Returns:
- type utilities
-
getAstModifyingAnnotationProcessors
public java.util.List<AstModifyingAnnotationProcessor> getAstModifyingAnnotationProcessors()
-
getAccessorNaming
public AccessorNamingUtils getAccessorNaming()
-
getAccessorNamingStrategy
public AccessorNamingStrategy getAccessorNamingStrategy()
-
getEnumMappingStrategy
public EnumMappingStrategy getEnumMappingStrategy()
-
getBuilderProvider
public BuilderProvider getBuilderProvider()
-
getEnumTransformationStrategies
public java.util.Map<java.lang.String,EnumTransformationStrategy> getEnumTransformationStrategies()
-
-