Package dagger.model

Enum BindingKind

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<BindingKind>

    public enum BindingKind
    extends java.lang.Enum<BindingKind>
    Represents the different kinds of Bindings that can exist in a binding graph.
    • Enum Constant Detail

      • INJECTION

        public static final BindingKind INJECTION
        A binding for an Inject-annotated constructor.
      • PROVISION

        public static final BindingKind PROVISION
        A binding for a Provides-annotated method.
      • ASSISTED_INJECTION

        public static final BindingKind ASSISTED_INJECTION
        A binding for an Inject-annotated constructor that contains at least one Assisted-annotated parameter.
      • COMPONENT

        public static final BindingKind COMPONENT
        An implicit binding for a Component- or ProductionComponent-annotated type.
      • COMPONENT_PROVISION

        public static final BindingKind COMPONENT_PROVISION
        A binding for a provision method on a component's dependency.
      • COMPONENT_DEPENDENCY

        public static final BindingKind COMPONENT_DEPENDENCY
        A binding for an instance of a component's dependency.
      • SUBCOMPONENT_CREATOR

        public static final BindingKind SUBCOMPONENT_CREATOR
        A binding for a subcomponent creator (a builder or factory).
        Since:
        2.22 (previously named SUBCOMPONENT_BUILDER)
      • BOUND_INSTANCE

        public static final BindingKind BOUND_INSTANCE
        A binding for a BindsInstance-annotated builder method.
      • PRODUCTION

        public static final BindingKind PRODUCTION
        A binding for a Produces-annotated method.
      • COMPONENT_PRODUCTION

        public static final BindingKind COMPONENT_PRODUCTION
        A binding for a production method on a production component's ProductionComponent#dependencies() that returns a ListenableFuture or FluentFuture. Methods on production component dependencies that don't return a future are considered component provision bindings.
      • MULTIBOUND_SET

        public static final BindingKind MULTIBOUND_SET
        A synthetic binding for a multibound set that depends on individual multibinding PROVISION or PRODUCTION contributions.
      • MULTIBOUND_MAP

        public static final BindingKind MULTIBOUND_MAP
        A synthetic binding for a multibound map that depends on the individual multibinding PROVISION or PRODUCTION contributions.
      • OPTIONAL

        public static final BindingKind OPTIONAL
        A synthetic binding for Optional of a type or a Provider, Lazy, or Provider of Lazy of a type. Generated by a BindsOptionalOf declaration.
      • DELEGATE

        public static final BindingKind DELEGATE
        A binding for Binds-annotated method that delegates from requests for one key to another.
      • MEMBERS_INJECTION

        public static final BindingKind MEMBERS_INJECTION
        A binding for a members injection method on a component.
    • Method Detail

      • values

        public static BindingKind[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (BindingKind c : BindingKind.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static BindingKind valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • isMultibinding

        public boolean isMultibinding()
        Returns true if this is a kind of multibinding (not a contribution to a multibinding, but the multibinding itself).