Class JavaVisitorContext
- java.lang.Object
-
- io.micronaut.annotation.processing.visitor.JavaVisitorContext
-
- All Implemented Interfaces:
io.micronaut.core.convert.value.ConvertibleValues<java.lang.Object>
,io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
,io.micronaut.core.value.ValueResolver<java.lang.CharSequence>
,io.micronaut.inject.visitor.BeanElementVisitorContext
,io.micronaut.inject.visitor.VisitorContext
,io.micronaut.inject.writer.ClassWriterOutputVisitor
,java.lang.Iterable<java.util.Map.Entry<java.lang.String,java.lang.Object>>
@Internal public class JavaVisitorContext extends java.lang.Object implements io.micronaut.inject.visitor.VisitorContext, io.micronaut.inject.visitor.BeanElementVisitorContext
The visitor context when visiting Java code.- Since:
- 1.0
-
-
Constructor Summary
Constructors Constructor Description JavaVisitorContext(javax.annotation.processing.ProcessingEnvironment processingEnv, javax.annotation.processing.Messager messager, javax.lang.model.util.Elements elements, AnnotationUtils annotationUtils, javax.lang.model.util.Types types, ModelUtils modelUtils, GenericUtils genericUtils, javax.annotation.processing.Filer filer, io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> visitorAttributes, io.micronaut.inject.visitor.TypeElementVisitor.VisitorKind visitorKind)
The default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description io.micronaut.inject.ast.beans.BeanElementBuilder
addAssociatedBean(io.micronaut.inject.ast.Element originatingElement, io.micronaut.inject.ast.ClassElement type)
void
addGeneratedResource(java.lang.String resource)
io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
clear()
void
fail(java.lang.String message, io.micronaut.inject.ast.Element element)
void
finish()
<T> java.util.Optional<T>
get(java.lang.CharSequence name, io.micronaut.core.convert.ArgumentConversionContext<T> conversionContext)
AnnotationUtils
getAnnotationUtils()
The annotation utils.java.util.List<io.micronaut.inject.writer.AbstractBeanDefinitionBuilder>
getBeanElementBuilders()
java.util.Optional<io.micronaut.inject.ast.ClassElement>
getClassElement(java.lang.String name)
io.micronaut.inject.ast.ClassElement[]
getClassElements(java.lang.String aPackage, java.lang.String... stereotypes)
java.lang.Iterable<java.net.URL>
getClasspathResources(java.lang.String path)
JavaElementFactory
getElementFactory()
javax.lang.model.util.Elements
getElements()
The elements.java.util.Collection<java.lang.String>
getGeneratedResources()
GenericUtils
getGenericUtils()
The generic utils object.javax.annotation.processing.Messager
getMessager()
The messager.ModelUtils
getModelUtils()
The model utils.java.util.Map<java.lang.String,java.lang.String>
getOptions()
Java visitor context options fromjavac
arguments andSystem.getProperties()
javax.annotation.processing.ProcessingEnvironment
getProcessingEnv()
javax.lang.model.util.Types
getTypes()
The types.io.micronaut.inject.visitor.TypeElementVisitor.VisitorKind
getVisitorKind()
void
info(java.lang.String message)
void
info(java.lang.String message, io.micronaut.inject.ast.Element element)
java.util.Set<java.lang.String>
names()
io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
put(java.lang.CharSequence key, java.lang.Object value)
io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
remove(java.lang.CharSequence key)
java.util.Collection<java.lang.Object>
values()
java.io.OutputStream
visitClass(java.lang.String classname, io.micronaut.inject.ast.Element originatingElement)
java.io.OutputStream
visitClass(java.lang.String classname, io.micronaut.inject.ast.Element... originatingElements)
java.util.Optional<io.micronaut.inject.writer.GeneratedFile>
visitGeneratedFile(java.lang.String path)
java.util.Optional<io.micronaut.inject.writer.GeneratedFile>
visitMetaInfFile(java.lang.String path, io.micronaut.inject.ast.Element... originatingElements)
void
visitServiceDescriptor(java.lang.String type, java.lang.String classname)
void
visitServiceDescriptor(java.lang.String type, java.lang.String classname, io.micronaut.inject.ast.Element originatingElement)
void
warn(java.lang.String message, io.micronaut.inject.ast.Element element)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.micronaut.inject.writer.ClassWriterOutputVisitor
getServiceEntries, visitClass, visitServiceDescriptor, visitServiceDescriptor
-
Methods inherited from interface io.micronaut.core.convert.value.ConvertibleValues
asMap, asMap, asProperties, contains, forEach, getValue, getValueType, isEmpty, iterator, subMap, subMap, subMap
-
-
-
-
Constructor Detail
-
JavaVisitorContext
public JavaVisitorContext(javax.annotation.processing.ProcessingEnvironment processingEnv, javax.annotation.processing.Messager messager, javax.lang.model.util.Elements elements, AnnotationUtils annotationUtils, javax.lang.model.util.Types types, ModelUtils modelUtils, GenericUtils genericUtils, javax.annotation.processing.Filer filer, io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> visitorAttributes, io.micronaut.inject.visitor.TypeElementVisitor.VisitorKind visitorKind)
The default constructor.- Parameters:
processingEnv
- The processing environmentmessager
- The messagerelements
- The elementsannotationUtils
- The annotation utilstypes
- Type typesmodelUtils
- The model utilsgenericUtils
- The generic type utilsfiler
- The filervisitorAttributes
- The attributesvisitorKind
- The visitor kind
-
-
Method Detail
-
getVisitorKind
public io.micronaut.inject.visitor.TypeElementVisitor.VisitorKind getVisitorKind()
- Returns:
- The visitor kind
-
getProcessingEnv
public javax.annotation.processing.ProcessingEnvironment getProcessingEnv()
- Returns:
- The processing environment
-
getClasspathResources
@NonNull public java.lang.Iterable<java.net.URL> getClasspathResources(@NonNull java.lang.String path)
- Specified by:
getClasspathResources
in interfaceio.micronaut.inject.visitor.VisitorContext
-
getClassElement
public java.util.Optional<io.micronaut.inject.ast.ClassElement> getClassElement(java.lang.String name)
- Specified by:
getClassElement
in interfaceio.micronaut.inject.visitor.VisitorContext
-
getClassElements
@NonNull public io.micronaut.inject.ast.ClassElement[] getClassElements(@NonNull java.lang.String aPackage, @NonNull java.lang.String... stereotypes)
- Specified by:
getClassElements
in interfaceio.micronaut.inject.visitor.VisitorContext
-
getElementFactory
@NonNull public JavaElementFactory getElementFactory()
- Specified by:
getElementFactory
in interfaceio.micronaut.inject.visitor.VisitorContext
-
info
public void info(java.lang.String message, @Nullable io.micronaut.inject.ast.Element element)
- Specified by:
info
in interfaceio.micronaut.inject.visitor.VisitorContext
-
info
public void info(java.lang.String message)
- Specified by:
info
in interfaceio.micronaut.inject.visitor.VisitorContext
-
fail
public void fail(java.lang.String message, @Nullable io.micronaut.inject.ast.Element element)
- Specified by:
fail
in interfaceio.micronaut.inject.visitor.VisitorContext
-
warn
public void warn(java.lang.String message, @Nullable io.micronaut.inject.ast.Element element)
- Specified by:
warn
in interfaceio.micronaut.inject.visitor.VisitorContext
-
visitClass
public java.io.OutputStream visitClass(java.lang.String classname, @Nullable io.micronaut.inject.ast.Element originatingElement) throws java.io.IOException
- Specified by:
visitClass
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
- Throws:
java.io.IOException
-
visitClass
public java.io.OutputStream visitClass(java.lang.String classname, io.micronaut.inject.ast.Element... originatingElements) throws java.io.IOException
- Specified by:
visitClass
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
- Throws:
java.io.IOException
-
visitServiceDescriptor
public void visitServiceDescriptor(java.lang.String type, java.lang.String classname)
- Specified by:
visitServiceDescriptor
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
-
visitServiceDescriptor
public void visitServiceDescriptor(java.lang.String type, java.lang.String classname, io.micronaut.inject.ast.Element originatingElement)
- Specified by:
visitServiceDescriptor
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
-
visitMetaInfFile
public java.util.Optional<io.micronaut.inject.writer.GeneratedFile> visitMetaInfFile(java.lang.String path, io.micronaut.inject.ast.Element... originatingElements)
- Specified by:
visitMetaInfFile
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
- Specified by:
visitMetaInfFile
in interfaceio.micronaut.inject.visitor.VisitorContext
-
visitGeneratedFile
public java.util.Optional<io.micronaut.inject.writer.GeneratedFile> visitGeneratedFile(java.lang.String path)
- Specified by:
visitGeneratedFile
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
- Specified by:
visitGeneratedFile
in interfaceio.micronaut.inject.visitor.VisitorContext
-
finish
public void finish()
- Specified by:
finish
in interfaceio.micronaut.inject.writer.ClassWriterOutputVisitor
-
getMessager
public javax.annotation.processing.Messager getMessager()
The messager.- Returns:
- The messager
-
getModelUtils
public ModelUtils getModelUtils()
The model utils.- Returns:
- The model utils
-
getElements
public javax.lang.model.util.Elements getElements()
The elements.- Returns:
- The elements
-
getAnnotationUtils
public AnnotationUtils getAnnotationUtils()
The annotation utils.- Returns:
- The annotation utils
-
getTypes
public javax.lang.model.util.Types getTypes()
The types.- Returns:
- The types
-
getGenericUtils
public GenericUtils getGenericUtils()
The generic utils object.- Returns:
- The generic utils
-
getOptions
public java.util.Map<java.lang.String,java.lang.String> getOptions()
Java visitor context options fromjavac
arguments andSystem.getProperties()
System properties has priority over arguments.
- Specified by:
getOptions
in interfaceio.micronaut.inject.visitor.VisitorContext
- Returns:
- Java visitor context options for all visitors
- See Also:
TypeElementVisitor
, javac arguments
-
put
public io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> put(java.lang.CharSequence key, @Nullable java.lang.Object value)
- Specified by:
put
in interfaceio.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
-
remove
public io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> remove(java.lang.CharSequence key)
- Specified by:
remove
in interfaceio.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
-
clear
public io.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object> clear()
- Specified by:
clear
in interfaceio.micronaut.core.convert.value.MutableConvertibleValues<java.lang.Object>
-
names
public java.util.Set<java.lang.String> names()
- Specified by:
names
in interfaceio.micronaut.core.convert.value.ConvertibleValues<java.lang.Object>
-
values
public java.util.Collection<java.lang.Object> values()
- Specified by:
values
in interfaceio.micronaut.core.convert.value.ConvertibleValues<java.lang.Object>
-
get
public <T> java.util.Optional<T> get(java.lang.CharSequence name, io.micronaut.core.convert.ArgumentConversionContext<T> conversionContext)
- Specified by:
get
in interfaceio.micronaut.core.value.ValueResolver<java.lang.CharSequence>
-
getGeneratedResources
public java.util.Collection<java.lang.String> getGeneratedResources()
- Specified by:
getGeneratedResources
in interfaceio.micronaut.inject.visitor.VisitorContext
-
addGeneratedResource
public void addGeneratedResource(@NonNull java.lang.String resource)
- Specified by:
addGeneratedResource
in interfaceio.micronaut.inject.visitor.VisitorContext
-
getBeanElementBuilders
@Internal public java.util.List<io.micronaut.inject.writer.AbstractBeanDefinitionBuilder> getBeanElementBuilders()
- Returns:
- Gets the produced bean definition builders.
-
addAssociatedBean
public io.micronaut.inject.ast.beans.BeanElementBuilder addAssociatedBean(io.micronaut.inject.ast.Element originatingElement, io.micronaut.inject.ast.ClassElement type)
- Specified by:
addAssociatedBean
in interfaceio.micronaut.inject.visitor.BeanElementVisitorContext
-
-