public final class

InjectionRequest

extends Object
implements Element
java.lang.Object
   ↳ com.google.inject.spi.InjectionRequest<T>

Class Overview

A request to inject the instance fields and methods of an instance. Requests are created explicitly in a module using requestInjection() statements:

     requestInjection(serviceInstance);

Summary

Public Constructors
InjectionRequest(Object source, TypeLiteral<T> type, T instance)
Public Methods
<R> R acceptVisitor(ElementVisitor<R> visitor)
void applyTo(Binder binder)
Writes this module element to the given binder (optional operation).
Set<InjectionPoint> getInjectionPoints()
Returns the instance methods and fields of instance that will be injected to fulfill this request.
T getInstance()
Object getSource()
Returns an arbitrary object containing information about the "place" where this element was configured.
TypeLiteral<T> getType()
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.google.inject.spi.Element

Public Constructors

public InjectionRequest (Object source, TypeLiteral<T> type, T instance)

Public Methods

public R acceptVisitor (ElementVisitor<R> visitor)

public void applyTo (Binder binder)

Writes this module element to the given binder (optional operation).

Parameters
binder to apply configuration element to

public Set<InjectionPoint> getInjectionPoints ()

Returns the instance methods and fields of instance that will be injected to fulfill this request.

Returns
  • a possibly empty set of injection points. The set has a specified iteration order. All fields are returned and then all methods. Within the fields, supertype fields are returned before subtype fields. Similarly, supertype methods are returned before subtype methods.
Throws
ConfigurationException if there is a malformed injection point on the class of instance, such as a field with multiple binding annotations. The exception's partial value is a Set<InjectionPoint> of the valid injection points.

public T getInstance ()

public 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 call toString() on the source object if the type is unfamiliar.

public TypeLiteral<T> getType ()