Interface Element
- All Known Subinterfaces:
Binding<T>
,ConstructorBinding<T>
,ConvertedConstantBinding<T>
,ExposedBinding<T>
,InstanceBinding<T>
,LinkedKeyBinding<T>
,PrivateElements
,ProviderBinding<T>
,ProviderInstanceBinding<T>
,ProviderKeyBinding<T>
,UntargettedBinding<T>
- All Known Implementing Classes:
BindingImpl
,ExposedBindingImpl
,InjectionRequest
,InstanceBindingImpl
,LinkedBindingImpl
,LinkedProviderBindingImpl
,MembersInjectorLookup
,Message
,PrivateElementsImpl
,ProviderInstanceBindingImpl
,ProviderLookup
,ScopeBinding
,StaticInjectionRequest
,TypeConverterBinding
,TypeListenerBinding
,UntargettedBindingImpl
public interface Element
A core component of a module or injector.
The elements of a module can be inspected, validated and rewritten. Use Elements.getElements()
to read the elements
from a module, and Elements.getModule()
to rewrite them.
This can be used for static analysis and generation of Guice modules.
- Since:
- 2.0
-
Method Summary
Modifier and TypeMethodDescription<T> T
acceptVisitor(ElementVisitor<T> visitor)
Accepts an element visitor.void
Writes this module element to the given binder (optional operation).Returns an arbitrary object containing information about the "place" where this element was configured.
-
Method Details
-
getSource
Object getSource()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 calltoString()
on the source object if the type is unfamiliar. -
acceptVisitor
Accepts an element visitor. Invokes the visitor method specific to this element's type.- Parameters:
visitor
- to call back on
-
applyTo
Writes this module element to the given binder (optional operation).- Parameters:
binder
- to apply configuration element to- Throws:
UnsupportedOperationException
- if theapplyTo
method is not supported by this element.
-