Interface ProducerFactory<X>



  • public interface ProducerFactory<X>

    An ProducerFactory can create an Producer for a given bean.

    The ProducerFactory obtained from BeanManager#getProducerFactory() is capable of providing container created producers. This factory can be wrapped to add behavior to container created producers.

    For example:

     BeanAttributes<MyBean> myBeanAttributes = beanManager.createBeanAttributes(myBeanAnnotatedFieldField);
     beanManager.createBean(myBeanAttributes, MyBean.class, new ProducerFactory() {
     
         public <T> Producer<T> createProducer(Bean<T> bean) {
             return new WrappingProducer<T>(beanManager.getProducerFactory(myBeanAnnotatedField).createProducer(bean));
         }
     });
     
    Since:
    1.1
    • Method Detail

      • createProducer

        <T> Producer<T> createProducer​(Bean<T> bean)
        Create a new producer for a bean.
        Parameters:
        bean - the bean to create the producer for, or null if creating a non-contextual object
        Returns:
        the producer