Class Key

java.lang.Object
dagger.spi.model.Key

public abstract class Key extends Object
A type and an optional qualifier that is the lookup key for a binding.
  • Constructor Details

    • Key

      public Key()
  • Method Details

    • qualifier

      public abstract Optional<DaggerAnnotation> qualifier()
      A Qualifier annotation that provides a unique namespace prefix for the type of this key.
    • type

      public abstract DaggerType type()
      The type represented by this key.
    • multibindingContributionIdentifier

      public abstract Optional<Key.MultibindingContributionIdentifier> multibindingContributionIdentifier()
      Distinguishes keys for multibinding contributions that share a type() and qualifier().

      Each multibound map and set has a synthetic multibinding that depends on the specific contributions to that map or set using keys that identify those multibinding contributions.

      Absent except for multibinding contributions.

    • withType

      public Key withType(DaggerType newType)
      Returns a copy of this key with the type replaced with the given type.
    • withMultibindingContributionIdentifier

      public Key withMultibindingContributionIdentifier(DaggerTypeElement contributingModule, DaggerExecutableElement bindingMethod)
      Returns a copy of this key with the multibinding contribution identifier replaced with the given multibinding contribution identifier.
    • withoutMultibindingContributionIdentifier

      public Key withoutMultibindingContributionIdentifier()
      Returns a copy of this key with the multibinding contribution identifier, if any, removed.
    • hashCode

      @Memoized public abstract int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public abstract boolean equals(Object o)
      Overrides:
      equals in class Object
    • toString

      public final String toString()
      Overrides:
      toString in class Object
    • builder

      public static Key.Builder builder(DaggerType type)
      Returns a builder for Keys.