Class CrossOverDescriptor<T>

    • Method Detail

      • isReified

        public boolean isReified()
        This method returns true if this descriptor has been reified (class loaded). If this method returns false then the other methods in this interface will throw an IllegalStateException. Once this method returns true it may be
        Specified by:
        isReified in interface ActiveDescriptor<T>
        Overrides:
        isReified in class AbstractActiveDescriptor<T>
        Returns:
        true if this descriptor has been reified, false otherwise
      • getImplementationClass

        public Class<?> getImplementationClass()
        Description copied from interface: ActiveDescriptor
        The implementation class that should be used to generate new instances of this descriptor.

        If the class returned is a Factory, then the factory is used to create instances. In this case the system will get an instance of the factory and use it to create the instances

        Returns:
        The class that directly implements the contract types, or the class that is the factory for an object that implements the contract types
      • getInjectees

        public List<Injectee> getInjectees()
        Description copied from interface: ActiveDescriptor
        Returns the full list of Injectees this class has. These references will be resolved prior to the class being constructed, even if these injectees are field or method injectees.

        If this descriptor is describing a factory created type then this list must have zero length

        Specified by:
        getInjectees in interface ActiveDescriptor<T>
        Overrides:
        getInjectees in class AbstractActiveDescriptor<T>
        Returns:
        Will not return null, but may return an empty list. The set of Injectees that must be resolved before this ActiveDescriptor can be constructed
      • create

        public T create​(ServiceHandle<?> root)
        Description copied from interface: ActiveDescriptor
        Creates an instance of the ActiveDescriptor. All of the Injectee's must be created prior to instantiation, and associated with the ExtendedProvider so that they can be destroyed properly
        Parameters:
        root - The root service handle, which can be used to associated all the PerLookup objects with this creation
        Returns:
        An instance of this ActiveDescriptor
      • dispose

        public void dispose​(T instance)
        Description copied from interface: ActiveDescriptor
        Disposes this instance. All the PerLookup objects that were created for this instance will be destroyed after this object has been destroyed
        Specified by:
        dispose in interface ActiveDescriptor<T>
        Overrides:
        dispose in class AbstractActiveDescriptor<T>
        Parameters:
        instance - The instance to destroy