Interface Messager


  • public interface Messager
    A Messager provides the way for an annotation processor to report error messages, warnings, and other notices. Elements, annotations, and annotation values can be passed to provide a location hint for the message. However, such location hints may be unavailable or only approximate.

    Printing a message with an error kind will raise an error.

    Note that the messages "printed" by methods in this interface may or may not appear as textual output to a location like System.out or System.err. Implementations may choose to present this information in a different fashion, such as messages in a window.

    Since:
    1.6
    See Also:
    ProcessingEnvironment.getLocale()
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void printMessage​(javax.tools.Diagnostic.Kind kind, java.lang.CharSequence msg)
      Prints a message of the specified kind.
      void printMessage​(javax.tools.Diagnostic.Kind kind, java.lang.CharSequence msg, Element e)
      Prints a message of the specified kind at the location of the element.
      void printMessage​(javax.tools.Diagnostic.Kind kind, java.lang.CharSequence msg, Element e, AnnotationMirror a)
      Prints a message of the specified kind at the location of the annotation mirror of the annotated element.
      void printMessage​(javax.tools.Diagnostic.Kind kind, java.lang.CharSequence msg, Element e, AnnotationMirror a, AnnotationValue v)
      Prints a message of the specified kind at the location of the annotation value inside the annotation mirror of the annotated element.
    • Method Detail

      • printMessage

        void printMessage​(javax.tools.Diagnostic.Kind kind,
                          java.lang.CharSequence msg)
        Prints a message of the specified kind.
        Parameters:
        kind - the kind of message
        msg - the message, or an empty string if none
      • printMessage

        void printMessage​(javax.tools.Diagnostic.Kind kind,
                          java.lang.CharSequence msg,
                          Element e)
        Prints a message of the specified kind at the location of the element.
        Parameters:
        kind - the kind of message
        msg - the message, or an empty string if none
        e - the element to use as a position hint
      • printMessage

        void printMessage​(javax.tools.Diagnostic.Kind kind,
                          java.lang.CharSequence msg,
                          Element e,
                          AnnotationMirror a)
        Prints a message of the specified kind at the location of the annotation mirror of the annotated element.
        Parameters:
        kind - the kind of message
        msg - the message, or an empty string if none
        e - the annotated element
        a - the annotation to use as a position hint
      • printMessage

        void printMessage​(javax.tools.Diagnostic.Kind kind,
                          java.lang.CharSequence msg,
                          Element e,
                          AnnotationMirror a,
                          AnnotationValue v)
        Prints a message of the specified kind at the location of the annotation value inside the annotation mirror of the annotated element.
        Parameters:
        kind - the kind of message
        msg - the message, or an empty string if none
        e - the annotated element
        a - the annotation containing the annotation value
        v - the annotation value to use as a position hint