Package org.jboss.logging.processor.apt
Class MessageInterfaceFactory.AptMessageInterface
- java.lang.Object
-
- org.jboss.logging.processor.apt.AbstractClassType
-
- org.jboss.logging.processor.apt.MessageInterfaceFactory.AptMessageInterface
-
- All Implemented Interfaces:
java.lang.Comparable<MessageInterface>
,javax.lang.model.AnnotatedConstruct
,javax.lang.model.element.Element
,javax.lang.model.element.Parameterizable
,javax.lang.model.element.QualifiedNameable
,javax.lang.model.element.TypeElement
,ClassType
,DelegatingElement
,DelegatingTypeElement
,JavaDocComment
,MessageInterface
- Enclosing class:
- MessageInterfaceFactory
private static class MessageInterfaceFactory.AptMessageInterface extends AbstractClassType implements MessageInterface
Message interface implementation.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Properties
expressionProperties
private java.util.Set<MessageInterface>
extendedInterfaces
private java.lang.String
fqcn
private javax.lang.model.element.TypeElement
generatedAnnotation
private int
idLen
private javax.lang.model.element.TypeElement
interfaceElement
private java.util.List<MessageMethod>
messageMethods
private java.lang.String
packageName
private java.lang.String
projectCode
private java.lang.String
qualifiedName
private java.lang.String
simpleName
private java.util.List<ValidIdRange>
validIdRanges
-
Fields inherited from class org.jboss.logging.processor.apt.AbstractClassType
elements, processingEnv, typeMirror, types
-
-
Constructor Summary
Constructors Modifier Constructor Description private
AptMessageInterface(javax.lang.model.element.TypeElement interfaceElement, javax.annotation.processing.ProcessingEnvironment processingEnv, java.util.Properties expressionProperties, boolean addGeneratedAnnotation)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(MessageInterface o)
boolean
equals(java.lang.Object obj)
java.util.Properties
expressionProperties()
The properties used to resolve expressions.java.util.Set<MessageInterface>
extendedInterfaces()
A set of qualified interface names this interface extends or an empty set.boolean
extendsLoggerInterface()
Checks the interface to see if thelogger interface
is being extended in this interface.javax.lang.model.element.TypeElement
generatedAnnotation()
Returns the type to use for the@Generated
annotation.java.lang.String
getComment()
The JavaDoc comments if available ornull
if there are no JavaDoc's present.javax.lang.model.element.TypeElement
getDelegate()
The element to delegate the default methods to.int
getIdLength()
The length to pad the id with.int
hashCode()
private void
init()
java.lang.String
loggingFQCN()
The fully qualified class name to use for log methods.java.util.Collection<MessageMethod>
methods()
A collection of all the methods this interface needs to implement.java.lang.String
name()
The qualified name of the message interface.java.lang.String
packageName()
The package name of the message interface.java.lang.String
projectCode()
The project code for the message interface ornull
if not annotated with@MessageBundle
or@MessageLogger
.java.lang.String
simpleName()
The name of the interface without the package.java.lang.String
toString()
java.util.List<ValidIdRange>
validIdRanges()
Returns a list ofvalid id ranges
.-
Methods inherited from class org.jboss.logging.processor.apt.AbstractClassType
isAssignableFrom, isSameAs, isSubtypeOf
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jboss.logging.processor.model.ClassType
isAssignableFrom, isSameAs, isSubtypeOf
-
Methods inherited from interface org.jboss.logging.processor.model.DelegatingElement
accept, getAnnotation, getAnnotationMirrors, getAnnotationsByType, getKind, getModifiers, isAnnotatedWith
-
Methods inherited from interface org.jboss.logging.processor.model.DelegatingTypeElement
asType, getEnclosedElements, getEnclosingElement, getInterfaces, getNestingKind, getQualifiedName, getSimpleName, getSuperclass, getTypeParameters
-
-
-
-
Field Detail
-
interfaceElement
private final javax.lang.model.element.TypeElement interfaceElement
-
extendedInterfaces
private final java.util.Set<MessageInterface> extendedInterfaces
-
messageMethods
private final java.util.List<MessageMethod> messageMethods
-
validIdRanges
private final java.util.List<ValidIdRange> validIdRanges
-
expressionProperties
private final java.util.Properties expressionProperties
-
generatedAnnotation
private final javax.lang.model.element.TypeElement generatedAnnotation
-
projectCode
private java.lang.String projectCode
-
packageName
private java.lang.String packageName
-
simpleName
private java.lang.String simpleName
-
qualifiedName
private java.lang.String qualifiedName
-
fqcn
private java.lang.String fqcn
-
idLen
private int idLen
-
-
Method Detail
-
extendsLoggerInterface
public boolean extendsLoggerInterface()
Description copied from interface:MessageInterface
Checks the interface to see if thelogger interface
is being extended in this interface.- Specified by:
extendsLoggerInterface
in interfaceMessageInterface
- Returns:
true
if this interface extends the logger interface, otherwisefalse
.
-
name
public java.lang.String name()
Description copied from interface:MessageInterface
The qualified name of the message interface.- Specified by:
name
in interfaceMessageInterface
- Returns:
- the qualified name.
-
extendedInterfaces
public java.util.Set<MessageInterface> extendedInterfaces()
Description copied from interface:MessageInterface
A set of qualified interface names this interface extends or an empty set.- Specified by:
extendedInterfaces
in interfaceMessageInterface
- Returns:
- a set of interface names or an empty set.
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfacejavax.lang.model.element.Element
- Overrides:
hashCode
in classjava.lang.Object
-
methods
public java.util.Collection<MessageMethod> methods()
Description copied from interface:MessageInterface
A collection of all the methods this interface needs to implement.- Specified by:
methods
in interfaceMessageInterface
- Returns:
- a collection of methods.
-
compareTo
public int compareTo(MessageInterface o)
- Specified by:
compareTo
in interfacejava.lang.Comparable<MessageInterface>
-
projectCode
public java.lang.String projectCode()
Description copied from interface:MessageInterface
The project code for the message interface ornull
if not annotated with@MessageBundle
or@MessageLogger
.- Specified by:
projectCode
in interfaceMessageInterface
- Returns:
- the project code or
null
if not annotated with@MessageBundle
or@MessageLogger
-
init
private void init()
-
packageName
public java.lang.String packageName()
Description copied from interface:MessageInterface
The package name of the message interface.- Specified by:
packageName
in interfaceMessageInterface
- Returns:
- the package name.
-
getComment
public java.lang.String getComment()
Description copied from interface:JavaDocComment
The JavaDoc comments if available ornull
if there are no JavaDoc's present.- Specified by:
getComment
in interfaceJavaDocComment
- Returns:
- the JavaDoc comments or
null
.
-
simpleName
public java.lang.String simpleName()
Description copied from interface:MessageInterface
The name of the interface without the package.- Specified by:
simpleName
in interfaceMessageInterface
- Returns:
- the simple interface name.
-
loggingFQCN
public java.lang.String loggingFQCN()
Description copied from interface:MessageInterface
The fully qualified class name to use for log methods. This will generally be the same result asMessageInterface.name()
.- Specified by:
loggingFQCN
in interfaceMessageInterface
- Returns:
- the fully qualified class name to use for logging.
-
validIdRanges
public java.util.List<ValidIdRange> validIdRanges()
Description copied from interface:MessageInterface
Returns a list ofvalid id ranges
.- Specified by:
validIdRanges
in interfaceMessageInterface
- Returns:
- a list of valid id ranges or an empty list
-
getIdLength
public int getIdLength()
Description copied from interface:MessageInterface
The length to pad the id with. A value of less than 0 indicates no padding.- Specified by:
getIdLength
in interfaceMessageInterface
- Returns:
- the length to pad the id with
-
getDelegate
public javax.lang.model.element.TypeElement getDelegate()
Description copied from interface:DelegatingElement
The element to delegate the default methods to.- Specified by:
getDelegate
in interfaceDelegatingElement
- Specified by:
getDelegate
in interfaceDelegatingTypeElement
- Returns:
- the delegate
-
generatedAnnotation
public javax.lang.model.element.TypeElement generatedAnnotation()
Description copied from interface:MessageInterface
Returns the type to use for the@Generated
annotation. This may returnnull
of the implementation should not be annotated.- Specified by:
generatedAnnotation
in interfaceMessageInterface
- Returns:
- the type for the generated annotation or
null
if no annotation is wanted
-
expressionProperties
public java.util.Properties expressionProperties()
Description copied from interface:MessageInterface
The properties used to resolve expressions.- Specified by:
expressionProperties
in interfaceMessageInterface
- Returns:
- the properties used to resolve expressions
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equals
in interfacejavax.lang.model.element.Element
- Overrides:
equals
in classjava.lang.Object
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-