Package com.google.inject.spi
Class Message
- java.lang.Object
-
- com.google.inject.spi.Message
-
- All Implemented Interfaces:
Element,java.io.Serializable
public final class Message extends java.lang.Object implements java.io.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 usingaddError()statements:try { bindPropertiesFromFile(); } catch (IOException e) { addError(e); }- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.Throwablecauseprivate java.lang.Stringmessageprivate static longserialVersionUIDprivate java.util.List<java.lang.Object>sources
-
Constructor Summary
Constructors Constructor Description Message(java.lang.Object source, java.lang.String message)Message(java.lang.String message)Message(java.lang.String message, java.lang.Throwable cause)Message(java.util.List<java.lang.Object> sources, java.lang.String message, java.lang.Throwable cause)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> TacceptVisitor(ElementVisitor<T> visitor)Accepts an element visitor.voidapplyTo(Binder binder)Writes this module element to the given binder (optional operation).booleanequals(java.lang.Object o)java.lang.ThrowablegetCause()Returns the throwable that caused this message, ornullif this message was not caused by a throwable.java.lang.StringgetMessage()Gets the error message text.java.lang.StringgetSource()Returns an arbitrary object containing information about the "place" where this element was configured.java.util.List<java.lang.Object>getSources()inthashCode()java.lang.StringtoString()private java.lang.ObjectwriteReplace()When serialized, we eagerly convert sources to strings.
-
-
-
Field Detail
-
message
private final java.lang.String message
-
cause
private final java.lang.Throwable cause
-
sources
private final java.util.List<java.lang.Object> sources
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Message
public Message(java.util.List<java.lang.Object> sources, java.lang.String message, java.lang.Throwable cause)- Since:
- 2.0
-
Message
public Message(java.lang.String message, java.lang.Throwable cause)- Since:
- 4.0
-
Message
public Message(java.lang.Object source, java.lang.String message)
-
Message
public Message(java.lang.String message)
-
-
Method Detail
-
getSource
public java.lang.String getSource()
Description copied from interface:ElementReturns 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;
StackTraceElementis a good example. Tools should simply calltoString()on the source object if the type is unfamiliar.
-
getSources
public java.util.List<java.lang.Object> getSources()
- Since:
- 2.0
-
getMessage
public java.lang.String getMessage()
Gets the error message text.
-
acceptVisitor
public <T> T acceptVisitor(ElementVisitor<T> visitor)
Description copied from interface:ElementAccepts an element visitor. Invokes the visitor method specific to this element's type.- Specified by:
acceptVisitorin interfaceElement- Parameters:
visitor- to call back on- Since:
- 2.0
-
getCause
public java.lang.Throwable getCause()
Returns the throwable that caused this message, ornullif this message was not caused by a throwable.- Since:
- 2.0
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
applyTo
public void applyTo(Binder binder)
Description copied from interface:ElementWrites this module element to the given binder (optional operation).
-
writeReplace
private java.lang.Object writeReplace() throws java.io.ObjectStreamExceptionWhen serialized, we eagerly convert sources to strings. This hurts our formatting, but it guarantees that the receiving end will be able to read the message.- Throws:
java.io.ObjectStreamException
-
-