Class Unmanaged<T>

  • Type Parameters:
    T - type of unmanaged instances

    public class Unmanaged<T>
    extends Object

    Helper class for injecting and calling lifecycle callbacks unmanaged instances for use by framework and library integrators.

     Unmanaged<Foo> unmanagedFoo = new Unmanaged<Foo>(Foo.class);
     UnmanagedInstance<Foo> fooInstance = unmanagedFoo.newInstance();
     Foo foo = fooInstance.produce().inject().postConstruct().get();
     ... // Use the foo instance
     fooInstance.preDestroy().dispose();
     

    An instance of this class can be safely held for the lifetime of the application.

    Unmanaged.UnmanagedInstances created by this class are not suitable for sharing between threads.

    CDI Lite implementations are not required to provide support for Unmanaged.

    Since:
    1.1
    Author:
    Pete Muir
    • Constructor Detail

      • Unmanaged

        public Unmanaged​(BeanManager manager,
                         Class<T> clazz)
        Create an injector for the given class
        Parameters:
        manager - the BeanManager
        clazz - class of the unmanaged instances
      • Unmanaged

        public Unmanaged​(Class<T> clazz)
        Create an injector for the given class, using the current bean manager
        Parameters:
        clazz - class of the unmanaged instances