Class ClassModelFactory


  • public class ClassModelFactory
    extends java.lang.Object
    Creates a class model for the message interface.
    Author:
    James R. Perkins
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static ClassModel implementation​(javax.annotation.processing.ProcessingEnvironment processingEnv, MessageInterface messageInterface, boolean useLogging31)
      Creates an implementation code model from the message interface.
      static ClassModel translation​(javax.annotation.processing.ProcessingEnvironment processingEnv, MessageInterface messageInterface, java.lang.String translationSuffix, java.util.Map<MessageMethod,​java.lang.String> translations)
      Creates a class model for created translation implementations of the message interface.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • implementation

        public static ClassModel implementation​(javax.annotation.processing.ProcessingEnvironment processingEnv,
                                                MessageInterface messageInterface,
                                                boolean useLogging31)
                                         throws java.lang.IllegalArgumentException
        Creates an implementation code model from the message interface.
        Parameters:
        processingEnv - the processing environment
        messageInterface - the message interface to implement
        useLogging31 - whether or not jboss-logging 3.1 or higher is used
        Returns:
        the class model used to implement the interface.
        Throws:
        java.lang.IllegalArgumentException - if interface is not annotated with @MessageBundle or @MessageLogger
      • translation

        public static ClassModel translation​(javax.annotation.processing.ProcessingEnvironment processingEnv,
                                             MessageInterface messageInterface,
                                             java.lang.String translationSuffix,
                                             java.util.Map<MessageMethod,​java.lang.String> translations)
                                      throws java.lang.IllegalArgumentException
        Creates a class model for created translation implementations of the message interface.

        Note: The implementation class must exist before the translation implementations can be created.

        Parameters:
        processingEnv - the processing environment
        messageInterface - the message interface to implement.
        translationSuffix - the translation locale suffix.
        translations - a map of the translations for the methods.
        Returns:
        the class model used to create translation implementations of the interface.
        Throws:
        java.lang.IllegalArgumentException - if interface is not annotated with @MessageBundle or @MessageLogger