Class Message

java.lang.Object
com.google.inject.spi.Message
All Implemented Interfaces:
Element, Serializable

public final class Message extends Object implements Serializable, Element
An error message and the context in which it occured. Messages are usually created internally by Guice and its extensions. Messages can be created explicitly in a module using addError() statements:
     try {
       bindPropertiesFromFile();
     } catch (IOException e) {
       addError(e);
     }
Author:
crazybob@google.com (Bob Lee)
See Also:
  • Constructor Details

  • Method Details

    • getErrorDetail

      public ErrorDetail<?> getErrorDetail()
      Returns details about this error message.
      Since:
      5.0
    • getSource

      public String getSource()
      Description copied from interface: Element
      Returns an arbitrary object containing information about the "place" where this element was configured. Used by Guice in the production of descriptive error messages.

      Tools might specially handle types they know about; StackTraceElement is a good example. Tools should simply call toString() on the source object if the type is unfamiliar.

      Specified by:
      getSource in interface Element
    • getSources

      public List<Object> getSources()
      Since:
      2.0
    • getMessage

      public String getMessage()
      Gets the error message text.
    • acceptVisitor

      public <T> T acceptVisitor(ElementVisitor<T> visitor)
      Description copied from interface: Element
      Accepts an element visitor. Invokes the visitor method specific to this element's type.
      Specified by:
      acceptVisitor in interface Element
      Parameters:
      visitor - to call back on
      Since:
      2.0
    • getCause

      public Throwable getCause()
      Returns the throwable that caused this message, or null if this message was not caused by a throwable.
      Since:
      2.0
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • applyTo

      public void applyTo(Binder binder)
      Description copied from interface: Element
      Writes this module element to the given binder (optional operation).
      Specified by:
      applyTo in interface Element
      Parameters:
      binder - to apply configuration element to
      Since:
      2.0
    • withSource

      public Message withSource(List<Object> newSources)
      Returns a copy of this Message with its sources replaced.
      Since:
      5.0