Class DependencyInjectionFactory


  • public class DependencyInjectionFactory
    extends java.lang.Object
    A dependency injection factory.
    Since:
    1.2.2
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.Object newInstance​(java.lang.Class type, java.lang.Object[] dependencies)
      Create an instance with dependency injection.
      static java.lang.Object newInstance​(java.lang.Class type, java.lang.Object[] dependencies, java.util.BitSet usedDependencies)
      Create an instance with dependency injection.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DependencyInjectionFactory

        public DependencyInjectionFactory()
    • Method Detail

      • newInstance

        public static java.lang.Object newInstance​(java.lang.Class type,
                                                   java.lang.Object[] dependencies)
        Create an instance with dependency injection. The given dependencies are used to match the parameters of the constructors of the type. Constructors with most parameters are examined first. A parameter type sequence matching the sequence of the dependencies' types match first. Otherwise all the types of the dependencies must match one of the the parameters although no dependency is used twice. Use a TypedNull instance to inject null as parameter.
        Parameters:
        type - the type to create an instance of
        dependencies - the possible dependencies
        Returns:
        the instantiated object
        Throws:
        ObjectAccessException - if no instance can be generated
        java.lang.IllegalArgumentException - if more than 63 dependencies have been provided
        Since:
        1.2.2
      • newInstance

        public static java.lang.Object newInstance​(java.lang.Class type,
                                                   java.lang.Object[] dependencies,
                                                   java.util.BitSet usedDependencies)
        Create an instance with dependency injection. The given dependencies are used to match the parameters of the constructors of the type. Constructors with most parameters are examined first. A parameter type sequence matching the sequence of the dependencies' types match first. Otherwise all the types of the dependencies must match one of the the parameters although no dependency is used twice. Use a TypedNull instance to inject null as parameter.
        Parameters:
        type - the type to create an instance of
        dependencies - the possible dependencies
        usedDependencies - bit mask set by the method for all used dependencies (may be null)
        Returns:
        the instantiated object
        Throws:
        ObjectAccessException - if no instance can be generated
        java.lang.IllegalArgumentException - if more than 63 dependencies have been provided
        Since:
        1.4