Package org.jboss.logging.processor.model

# Interface MessageInterface

All Superinterfaces:
  `AnnotatedConstruct`, `ClassType`, `Comparable<MessageInterface>`, `DelegatingElement`, `DelegatingTypeElement`, `Element`, `JavaDocComment`, `Parameterizable`, `QualifiedNameable`, `TypeElement`

public interface MessageInterface extends Comparable<MessageInterface>, ClassType, JavaDocComment, DelegatingTypeElement
Date: 28.07.2011

Author:
  James R. Perkins

## Method Summary

Modifier and Type
Method
Description
`default Properties`
`expressionProperties()`
The properties used to resolve expressions.
`Set<MessageInterface>`
`extendedInterfaces()`
A set of qualified interface names this interface extends or an empty set.
`boolean`
`extendsLoggerInterface()`
Checks the interface to see if the `logger interface` is being extended in this interface.
`default TypeElement`
`generatedAnnotation()`
Returns the type to use for the `@Generated` annotation.
`int`
`getIdLength()`
The length to pad the id with.
`String`
`loggingFQCN()`
The fully qualified class name to use for log methods.
`Collection<MessageMethod>`
`methods()`
A collection of all the methods this interface needs to implement.
`String`
`name()`
The qualified name of the message interface.
`String`
`packageName()`
The package name of the message interface.
`String`
`projectCode()`
The project code for the message interface or `null` if not annotated with `@MessageBundle` or `@MessageLogger`.
`String`
`simpleName()`
The name of the interface without the package.
`List<org.jboss.logging.annotations.ValidIdRange>`
`validIdRanges()`
Returns a list of `valid id ranges`.

### Methods inherited from interface org.jboss.logging.processor.model.ClassType

`isAssignableFrom, isSameAs, isSubtypeOf`

### Methods inherited from interface java.lang.Comparable

`compareTo`

### 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, getDelegate, getEnclosedElements, getEnclosingElement, getInterfaces, getNestingKind, getQualifiedName, getSimpleName, getSuperclass, getTypeParameters`

### Methods inherited from interface javax.lang.model.element.Element

`equals, hashCode`

### Methods inherited from interface org.jboss.logging.processor.model.JavaDocComment

`getComment`

## Method Details

### extendsLoggerInterface

boolean extendsLoggerInterface()
Checks the interface to see if the `logger interface` is being extended in this interface.

Returns:
  `true` if this interface extends the logger interface, otherwise `false`.

### extendedInterfaces

Set<MessageInterface> extendedInterfaces()
A set of qualified interface names this interface extends or an empty set.

Returns:
  a set of interface names or an empty set.

### methods

Collection<MessageMethod> methods()
A collection of all the methods this interface needs to implement.

Returns:
  a collection of methods.

### projectCode

String projectCode()
The project code for the message interface or `null` if not annotated with `@MessageBundle` or `@MessageLogger`.

Returns:
  the project code or `null` if not annotated with `@MessageBundle` or `@MessageLogger`

### name

String name()
The qualified name of the message interface.

Returns:
  the qualified name.

### packageName

String packageName()
The package name of the message interface.

Returns:
  the package name.

### simpleName

String simpleName()
The name of the interface without the package.

Returns:
  the simple interface name.

### loggingFQCN

String loggingFQCN()
The fully qualified class name to use for log methods. This will generally be the same result as `name()`.

Returns:
  the fully qualified class name to use for logging.

### validIdRanges

List<org.jboss.logging.annotations.ValidIdRange> validIdRanges()
Returns a list of `valid id ranges`.

Returns:
  a list of valid id ranges or an empty list

### getIdLength

int getIdLength()
The length to pad the id with. A value of less than 0 indicates no padding.

Returns:
  the length to pad the id with

### generatedAnnotation

default TypeElement generatedAnnotation()
Returns the type to use for the `@Generated` annotation. This may return `null` of the implementation should not be annotated.

Returns:
  the type for the generated annotation or `null` if no annotation is wanted

### expressionProperties

default Properties expressionProperties()
The properties used to resolve expressions.

Returns:
  the properties used to resolve expressions