Class ElementSource
- java.lang.Object
-
- com.google.inject.spi.ElementSource
-
public final class ElementSource extends java.lang.ObjectContains information about where and how anelementwas bound.The
declaring sourcerefers to a location in source code that defines the Guiceelement. For example, if the element is created from a method annotated by @Provides, the declaring source of element would be the method itself.The sequence of class names of
modulesinvolved in the element creation can be retrieved bygetModuleClassNames(). The order of the module class names is reverse chronological. The first module (index 0) is the module that installs theelement. The last module is the root module.In order to support the cases where a Guice
elementis created from another Guiceelement(original) (e.g., byElement.applyTo(com.google.inject.Binder)), it also provides a reference to the original element source (getOriginalElementSource()).- Since:
- 4.0
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.ObjectgetDeclaringSource()Returns a single location in source code that defines the element.java.util.List<java.lang.String>getModuleClassNames()Returns the class names of modules involved in creating thisElement.ElementSourcegetOriginalElementSource()Returns theElementSourceof the element this was created or copied from.java.lang.StringtoString()ReturnsgetDeclaringSource().toString()value.
-
-
-
Method Detail
-
getOriginalElementSource
public ElementSource getOriginalElementSource()
Returns theElementSourceof the element this was created or copied from. If this was not created or copied from another element, returnsnull.
-
getDeclaringSource
public java.lang.Object getDeclaringSource()
Returns a single location in source code that defines the element. It can be any object such asConstructor,Method,Field,StackTraceElement, etc. For example, if the element is created from a method annotated by @Provides, the declaring source of element would be the method itself.
-
getModuleClassNames
public java.util.List<java.lang.String> getModuleClassNames()
Returns the class names of modules involved in creating thisElement. The first element (index 0) is the class name of module that defined the element, and the last element is the class name of root module.
-
toString
public java.lang.String toString()
ReturnsgetDeclaringSource().toString()value.- Overrides:
toStringin classjava.lang.Object
-
-