javax.enterprise.inject.spi
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
Author:
Pete Muir

Method Summary
<T> Producer<T>
createProducer(Bean<T> bean)
          Create a new producer for a bean.
 

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


Copyright © 2008-2013 JBoss by Red Hat, Inc.. All Rights Reserved.