Class StaticInjectionRequest

  • All Implemented Interfaces:
    Element

    public final class StaticInjectionRequest
    extends Object
    implements Element
    A request to inject the static fields and methods of a type. Requests are created explicitly in a module using requestStaticInjection() statements:
         requestStaticInjection(MyLegacyService.class);
    Since:
    2.0
    Author:
    jessewilson@google.com (Jesse Wilson)
    • Method Detail

      • getSource

        public Object 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
      • getType

        public Class<?> getType()
      • getInjectionPoints

        public Set<InjectionPoint> getInjectionPoints()
                                               throws ConfigurationException
        Returns the static methods and fields of type 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 type, such as a field with multiple binding annotations. The exception's partial value is a Set<InjectionPoint> of the valid injection points.
      • 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
      • 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
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object