Class FactoryDescriptorsImpl

java.lang.Object
org.glassfish.hk2.utilities.FactoryDescriptorsImpl
All Implemented Interfaces:
FactoryDescriptors

public class FactoryDescriptorsImpl extends Object implements FactoryDescriptors
This is an implementation of FactoryDescriptors that can be used by hk2 uses when creating descriptors that describe a Factory
  • Field Details

    • asService

      private final Descriptor asService
    • asProvideMethod

      private final Descriptor asProvideMethod
  • Constructor Details

    • FactoryDescriptorsImpl

      public FactoryDescriptorsImpl(Descriptor asService, Descriptor asProvideMethod)
      This creates a descriptor pair describing a Factory and the associated Factory.provide() method
      Parameters:
      asService - A description of the factory itself as an hk2 service. May not be null. Must have DescriptorType of DescriptorType.CLASS. One of the contracts must be Factory
      asProvideMethod - A description of the provide method of the factory. Must have DescriptorType of DescriptorType.PROVIDE_METHOD. May not be null
      Throws:
      IllegalArgumentException - if the descriptors are not of the proper type
  • Method Details

    • getFactoryAsAService

      public Descriptor getFactoryAsAService()
      Description copied from interface: FactoryDescriptors
      This returns the factory as a service itself. The advertised contracts must contain the implementation class of the factory and the Factory. The descriptor type must be DescriptorType.CLASS since this descriptor is describing the factory itself.
      Specified by:
      getFactoryAsAService in interface FactoryDescriptors
      Returns:
      The factory as a service itself
    • getFactoryAsAFactory

      public Descriptor getFactoryAsAFactory()
      Description copied from interface: FactoryDescriptors
      This returns the factory as a factory for some other type. The implementation class should contain the implementation class of the factory service. If the implementation class returned from this does not match the implementation class returned from getFactoryAsAService an error will occur. The contracts, name and qualifiers should represent the type returned from the provide method of the factory. The descriptor type must be DescriptorType.PROVIDE_METHOD since this descriptor is describing the factory as a factory, not as a service.
      Specified by:
      getFactoryAsAFactory in interface FactoryDescriptors
      Returns:
      The factory descriptor as a factory
    • hashCode

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

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

      public String toString()
      Overrides:
      toString in class Object