[webbeans-commits] Webbeans SVN: r3734 - in ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans: bean/builder and 4 other directories.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Tue Sep 22 11:17:52 EDT 2009
Author: kabir.khan at jboss.com
Date: 2009-09-22 11:17:52 -0400 (Tue, 22 Sep 2009)
New Revision: 3734
Modified:
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractReceiverBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DecoratorImpl.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethod.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ManagedBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewManagedBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewSessionBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerField.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethod.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/SessionBean.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractReceiverBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderFactoryImpl.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderImpl.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DecoratorBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DisposalMethodBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalBeanBuilderFactory.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalObserverMethodBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ManagedBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewManagedBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewSessionBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerFieldBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerMethodBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/SessionBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/BeanBuilderFactory.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/DecoratorBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/EnterpriseBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/ManagedBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/SimpleBeanBuilder.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/EEResourceProducerField.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/PersistenceContextProducerField.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bootstrap/ExtensionBeanDeployer.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ClassBeanDeploymentItem.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DecoratorDeploymentItem.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DeploymentItem.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ManagedBeanDeploymentItem.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/SessionBeanDeploymentItem.java
ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/Sorter.java
Log:
Javadoc
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -39,7 +39,7 @@
import org.jboss.webbeans.util.Reflections;
/**
- * An abstract bean representation common for all beans
+ * An abstract bean representation common for all beans.
*
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
@@ -96,6 +96,15 @@
* Constructor
*
* @param manager The Web Beans manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param serializable Is the bean serializable
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
*/
public AbstractBean(BeanManagerImpl manager,
String name,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractClassBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -81,6 +81,19 @@
*
* @param type The type
* @param manager The Web Beans manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param serializable Is the bean serializable
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
*/
protected AbstractClassBean(WBClass<T> type,
BeanManagerImpl manager,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractProducerBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -55,12 +55,20 @@
public abstract class AbstractProducerBean<T, S extends Member> extends AbstractReceiverBean<T, S> implements Producer<T>
{
/**
- * Constructor
+ * Protected Constructor
*
- * @param declaringBean The declaring bean
+ * @param declaringBean The bean containing this producer/disposal method/field
* @param manager The Web Beans manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
*/
- public AbstractProducerBean(AbstractClassBean<?> declaringBean,
+ protected AbstractProducerBean(AbstractClassBean<?> declaringBean,
BeanManagerImpl manager,
String name,
Class<T> type,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractReceiverBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractReceiverBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/AbstractReceiverBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -41,9 +41,22 @@
private final AbstractClassBean<?> declaringBean;
-
-
- public AbstractReceiverBean(AbstractClassBean<?> declaringBean,
+ /**
+ * Protected Constructor
+ *
+ * @param declaringBean The bean containing this producer/disposal method/field
+ * @param manager The Web Beans manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param serializable Is the bean serializable
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ */
+ protected AbstractReceiverBean(AbstractClassBean<?> declaringBean,
BeanManagerImpl manager,
String name,
Class<T> type,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DecoratorImpl.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DecoratorImpl.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DecoratorImpl.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -53,11 +53,23 @@
private final Set<Type> decoratedTypes;
/**
- * Creates a decorator bean
+ * Creates a decorator bean. This method should not be called,
+ * instead use DecoratorBuilder.
*
* @param <T> The type
* @param clazz The class
* @param manager the current manager
+ * @param name The name
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param specializedBean The bean being specialized by this if any
* @return a Bean
*/
public static <T> DecoratorImpl<T> of(WBClass<T> clazz,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethod.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethod.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/DisposalMethod.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -41,7 +41,25 @@
private MethodInjectionPoint<T, ?> disposalMethodInjectionPoint;
private final String id;
- protected DisposalMethod(BeanManagerImpl manager,
+ /**
+ * Creates a disposal method Web Bean. This method should not be called,
+ * instead use DisposalMethodBuilder.
+ *
+ *
+ * @param manager the current manager
+ * @param name The name
+ * @param disposalMethod The underlying method abstraction
+ * @param declaringBean The declaring bean abstraction
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ *
+ * @return A disposal method Web Bean
+ */
+ public static <T> DisposalMethod<T> of(BeanManagerImpl manager,
String name,
WBMethod<T, ?> disposalMethod,
AbstractClassBean<?> declaringBean,
@@ -52,19 +70,11 @@
boolean proxyable,
Set<Annotation> bindings)
{
- super(declaringBean, manager, name, type, types, mergedStereotypes, null, policy, Reflections.isSerializable(type), proxyable, bindings);
- this.disposalMethodInjectionPoint = MethodInjectionPoint.of(this, disposalMethod);
- this.id = createId("DisposalMethod-" + declaringBean.getName() + "-" + disposalMethod.getSignature().toString());
- addInjectionPoint(disposalMethodInjectionPoint);
+ return new DisposalMethod<T>(manager, name, disposalMethod, declaringBean, type, types, mergedStereotypes, policy, proxyable, bindings);
}
-
- @Override
- public WBMethod<T, ?> getAnnotatedItem()
- {
- return disposalMethodInjectionPoint;
- }
- public static <T> DisposalMethod<T> of(BeanManagerImpl manager,
+
+ protected DisposalMethod(BeanManagerImpl manager,
String name,
WBMethod<T, ?> disposalMethod,
AbstractClassBean<?> declaringBean,
@@ -75,10 +85,18 @@
boolean proxyable,
Set<Annotation> bindings)
{
- return new DisposalMethod<T>(manager, name, disposalMethod, declaringBean, type, types, mergedStereotypes, policy, proxyable, bindings);
+ super(declaringBean, manager, name, type, types, mergedStereotypes, null, policy, Reflections.isSerializable(type), proxyable, bindings);
+ this.disposalMethodInjectionPoint = MethodInjectionPoint.of(this, disposalMethod);
+ this.id = createId("DisposalMethod-" + declaringBean.getName() + "-" + disposalMethod.getSignature().toString());
+ addInjectionPoint(disposalMethodInjectionPoint);
}
+
+ @Override
+ public WBMethod<T, ?> getAnnotatedItem()
+ {
+ return disposalMethodInjectionPoint;
+ }
-
@Override
public String toString()
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ManagedBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ManagedBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ManagedBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -66,11 +66,23 @@
/**
- * Creates a simple, annotation defined Web Bean
+ * Creates a simple, annotation defined Web Bean. This method should not be called,
+ * instead use ManagedBeanBuilder.
*
- * @param <T> The type
* @param clazz The class
* @param manager the current manager
+ * @param name The name
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param specializedBean The bean being specialized by this if any
* @return A Web Bean
*/
public static <T> ManagedBean<T> of(WBClass<T> clazz,
@@ -96,7 +108,19 @@
* Constructor
*
* @param type The type of the bean
- * @param manager The Web Beans manager
+ * @param manager the current manager
+ * @param name The name
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param specializedBean The bean being specialized by this if any
*/
protected ManagedBean(WBClass<T> type,
BeanManagerImpl manager,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewManagedBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewManagedBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewManagedBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -37,11 +37,25 @@
{
/**
- * Creates an instance of a NewSimpleBean from an annotated class
+ * Creates an instance of a NewManagedBean from an annotated class. This method should not be called,
+ * instead use NewManagedBeanBuilder.
*
- * @param clazz The annotated class
- * @param manager The Web Beans manager
- * @return a new NewSimpleBean instance
+ * @param clazz The type of the bean
+ * @param manager the current manager
+ * @param name The name
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param specializedBean The bean being specialized by this if any
+ *
+ * @return a new NewManagedBean instance
*/
public static <T> NewManagedBean<T> of(WBClass<T> clazz,
BeanManagerImpl manager,
@@ -67,6 +81,18 @@
*
* @param type An annotated class
* @param manager The Web Beans manager
+ * @param name The name
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param specializedBean The bean being specialized by this if any
*/
protected NewManagedBean(final WBClass<T> type,
BeanManagerImpl manager,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewSessionBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewSessionBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/NewSessionBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -40,10 +40,26 @@
{
/**
- * Creates an instance of a NewEnterpriseBean from an annotated class
+ * Creates an instance of a NewSessionBean from an annotated class. This method should not be called,
+ * instead use NewSessionBeanBuilder.
*
- * @param clazz The annotated class
- * @param manager The Web Beans manager
+ * @param ejbDescriptor The EJB descriptor
+ * @param manager the current manager
+ * @param name The name
+ * @param types The bean types
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param proxyClass The proxy class
+ * @param specializedBean The bean being specialized by this if any
+ *
* @return a new NewEnterpriseBean instance
*/
public static <T> NewSessionBean<T> of(InternalEjbDescriptor<T> ejbDescriptor,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerField.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerField.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerField.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -43,12 +43,21 @@
private final String id;
/**
- * Creates a producer field
+ * Creates a producer field. This method should not be called,
+ * instead use ProducerFieldBuilder.
*
- * @param field The underlying method abstraction
+ * @param field The underlying field abstraction
* @param declaringBean The declaring bean abstraction
* @param manager the current manager
- * @return A producer field
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @return a producer field
*/
public static <T> ProducerField<T> of(WBField<T, ?> field,
AbstractClassBean<?> declaringBean,
@@ -68,9 +77,17 @@
/**
* Constructor
*
- * @param method The producer field abstraction
- * @param declaringBean The declaring bean
- * @param manager The Web Beans manager
+ * @param field The underlying method abstraction
+ * @param declaringBean The declaring bean abstraction
+ * @param manager the current manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
*/
protected ProducerField(WBField<T, ?> field,
AbstractClassBean<?> declaringBean,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethod.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethod.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ProducerMethod.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -52,11 +52,23 @@
private final String id;
/**
- * Creates a producer method Web Bean
+ * Creates a producer method Web Bean. This method should not be called,
+ * instead use ProducerMethodBuilder.
*
* @param method The underlying method abstraction
* @param declaringBean The declaring bean abstraction
* @param manager the current manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param disposalMethodBean The bean containing the producer method
+ * @param specializedBean The bean being specialized by this if any
+ *
* @return A producer Web Bean
*/
public static <T> ProducerMethod<T> of(WBMethod<T, ?> method,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/SessionBean.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/SessionBean.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/SessionBean.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -65,11 +65,27 @@
private final SessionBean<?> specializedBean;
/**
- * Creates a simple, annotation defined Enterprise Web Bean
+ * Creates a simple, annotation defined Enterprise Web Bean. This method should not be called,
+ * instead use SessionBeanBuilder.
*
* @param <T> The type
- * @param clazz The class
+ * @param ejbDescriptor The EJB descriptor
* @param manager the current manager
+ * @param name The name
+ * @param types The bean types
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param proxyClass The proxy class
+ * @param specializedBean The bean being specialized by this if any
+ *
* @return An Enterprise Web Bean
*/
public static <T> SessionBean<T> of(InternalEjbDescriptor<T> ejbDescriptor,
@@ -98,7 +114,22 @@
* Constructor
*
* @param type The type of the bean
- * @param manager The Web Beans manager
+ * @param ejbDescriptor The EJB descriptor
+ * @param manager the current manager
+ * @param name The name
+ * @param types The bean types
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param decorators The decorators for this bean
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ * @param dependencies The beans dependencies
+ * @param proxyClassForDecorators The proxy class for decorators
+ * @param postConstruct The postConstruct method
+ * @param preDestroy The preDestroy method
+ * @param proxyClass The proxy class
+ * @param specializedBean The bean being specialized by this if any
*/
protected SessionBean(WBClass<T> type,
InternalEjbDescriptor<T> ejbDescriptor,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -41,7 +41,7 @@
import org.jboss.webbeans.util.Reflections;
/**
- * Builder for An abstract bean representation common for all beans
+ * Builder for an abstract bean representation common for all beans
*
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractReceiverBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractReceiverBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/AbstractReceiverBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -29,6 +29,7 @@
import org.jboss.webbeans.log.Logging;
/**
+ * Buider for producer/disposal method/field beans
* @author pmuir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderFactoryImpl.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderFactoryImpl.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderFactoryImpl.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -92,9 +92,9 @@
return getBeanBuilderImpl(beanManager, annotatedType, null, true);
}
- public <T> InternalObserverMethodBuilder<T> getInternalObserverMethodBuilder(BeanManager beanManager, AnnotatedType<T> annotatedType)
+ public <T> InternalObserverMethodBuilder<T> getInternalObserverMethodBuilder(BeanManager beanManager)
{
- return getBeanBuilderImpl(beanManager, annotatedType, null, false);
+ return getBeanBuilderImpl(beanManager, null, null, false);
}
private <T> BeanBuilderImpl<T> getBeanBuilderImpl(BeanManager beanManager, AnnotatedType<T> annotatedType, EjbDescriptor<T> ejbDescriptor, boolean decorator)
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderImpl.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderImpl.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/BeanBuilderImpl.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -64,7 +64,7 @@
import org.jboss.webbeans.resources.ClassTransformer;
/**
- *
+ * Implementation of the bean builders
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
@@ -306,6 +306,8 @@
public Set<ObserverMethod<T, ?>> createObserverMethods(RIBean<T> declaringBean, WBClass<T> annotatedClass)
{
+ if (declaringBean.getBeanClass() != annotatedClass.getJavaClass())
+ throw new IllegalArgumentException(declaringBean + " is not a bean for " + annotatedClass);
Set<ObserverMethod<T, ?>> methods = null;
for (WBMethod<?, T> method : annotatedClass.getWBDeclaredMethodsWithAnnotatedParameters(Observes.class))
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DecoratorBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DecoratorBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DecoratorBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -31,7 +31,19 @@
import org.jboss.webbeans.introspector.WBClass;
/**
+ * Builder for decorator beans. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * BeanDeployerEnvironment beanDeployerEnvironment = ...;
+ * WBClass<T> annotatedClass = ...;
+ *
+ * DecoratorBuilder<T> builder = DecoratorBuilder.of(annotatedClass, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * DecoratorImpl<T> bean = builder.createBean();
+ * </pre>
+ *
+ *
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
@@ -65,7 +77,7 @@
}
/**
- * Creates a decorator bean
+ * Creates a decorator builder
*
* @param <T> The type
* @param clazz The class
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DisposalMethodBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DisposalMethodBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/DisposalMethodBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -40,7 +40,18 @@
import org.jboss.webbeans.log.Logging;
/**
+ * Builder for disposal methods. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * BeanDeployerEnvironment beanDeployerEnvironment = ...;
+ * WBMethod<T, ?> disposalMethod = ...;
+ * AbstractClassBean<?> declaringBean = ...;//Should be a ManagedBean or a SessionBean
+ *
+ * DisposalMethodBuilder<T> builder = DisposalMethodBuilder.of(beanManager, disposalMethod, declaringBean);
+ * builder.initialize(beanDeployerEnvironment);
+ * DisposalMethod<T> bean = builder.createBean();
+ * </pre>
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalBeanBuilderFactory.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalBeanBuilderFactory.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalBeanBuilderFactory.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -21,14 +21,14 @@
*/
package org.jboss.webbeans.bean.builder;
-import javax.enterprise.inject.spi.AnnotatedType;
import javax.enterprise.inject.spi.BeanManager;
import org.jboss.webbeans.bean.builder.spi.BeanBuilderFactory;
import org.jboss.webbeans.bootstrap.BeanDeployerEnvironment;
/**
- *
+ * Internal abstract class to keep track of the BeanDeployerEnvironment used and
+ * to create observer methods.
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
@@ -40,8 +40,18 @@
return (InternalBeanBuilderFactory)BeanBuilderFactory.getInstance();
}
- public abstract <T> InternalObserverMethodBuilder<T> getInternalObserverMethodBuilder(BeanManager beanManager, AnnotatedType<T> annotatedType);
+ /**
+ * Gets a observer method builder
+ * @param beanManager The bean manager to use
+ * @return the observer method builder
+ */
+ public abstract <T> InternalObserverMethodBuilder<T> getInternalObserverMethodBuilder(BeanManager beanManager);
+ /**
+ * Register a bean deployer environment against a manager
+ * @param manager The bean manager
+ * @param environment The environment
+ */
public abstract void registerBeanManager(BeanManager manager, BeanDeployerEnvironment environment);
}
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalObserverMethodBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalObserverMethodBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/InternalObserverMethodBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -29,11 +29,19 @@
import org.jboss.webbeans.introspector.WBClass;
/**
+ * Internal interface used to create observer methods
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
public interface InternalObserverMethodBuilder<T>
{
+ /**
+ * Create observer methods for a bean
+ * @param declaringBean The bean containing observer methods
+ * @param annotatedClass The annotated class
+ * @return A set of observer methods, or an empty set if none were found
+ * @throws IllegalStateException if declaringBean and annotatedClass are not for the same class
+ */
Set<ObserverMethod<T, ?>> createObserverMethods(RIBean<T> declaringBean, WBClass<T> annotatedClass);
}
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ManagedBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ManagedBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ManagedBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -34,8 +34,17 @@
import org.jboss.webbeans.util.Reflections;
/**
- * Builder for simple beans
+ * Builder for managed beans. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * WBClass<T> clazz = ...;
+ *
+ * ManagedBeanBuilder<T> builder = ManagedBeanBuilder.of(clazz, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * ManagedBean<T> bean = builder.createBean();
+ * </pre>
+ *
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*
@@ -56,7 +65,7 @@
* @param <T> The type
* @param clazz The class
* @param manager the current manager
- * @return A Web Bean
+ * @return A ManagedBeanBuilder instance
*/
static <T> ManagedBeanBuilder<T> of(WBClass<T> clazz, BeanManagerImpl manager)
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewManagedBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewManagedBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewManagedBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -30,8 +30,17 @@
import org.jboss.webbeans.log.Logging;
/**
- * Builder for a @New simple bean
+ * Builder for @New managed beans. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * WBClass<T> clazz = ...;
+ *
+ * NewManagedBeanBuilder<T> builder = NewManagedBeanBuilder.of(clazz, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * NewManagedBean<T> bean = builder.createBean();
+ * </pre>
+ *
* @author Nicklas Karlsson
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*/
@@ -44,7 +53,7 @@
*
* @param clazz The annotated class
* @param manager The Web Beans manager
- * @return a new NewSimpleBean instance
+ * @return a new NewManagedBeanBuilder instance
*/
static <T> NewManagedBeanBuilder<T> of(WBClass<T> clazz, BeanManagerImpl manager)
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewSessionBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewSessionBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/NewSessionBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -32,8 +32,17 @@
import org.jboss.webbeans.resources.ClassTransformer;
/**
- * Builder for a @New enterprise bean
+ * Builder for @New session beans. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * InternalEjbDescriptor<T> ejbDescriptor;
+ *
+ * NewSessionBeanBuilder<T> builder = NewSessionBeanBuilder.of(ejbDescriptor, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * NewSessionBean<T> bean = builder.createBean();
+ * </pre>
+ *
* @author Nicklas Karlsson
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*/
@@ -46,7 +55,7 @@
*
* @param clazz The annotated class
* @param manager The Web Beans manager
- * @return a new NewEnterpriseBean instance
+ * @return a new NewSessionBeanBuilder instance
*/
static <T> NewSessionBeanBuilder<T> of(InternalEjbDescriptor<T> ejbDescriptor, BeanManagerImpl manager)
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerFieldBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerFieldBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerFieldBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -37,8 +37,19 @@
import org.jboss.webbeans.ws.WSApiAbstraction;
/**
- * Builder for a producer field
+ * Builder for a producer field. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * WBField<T, ?> field = ...;
+ * AbstractClassBean<?> declaringBean = ...;
+ *
+ * ProducerFieldBuilder<T> builder = ProducerFieldBuilder.of(field, declaringBean, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * ProducerField<T> bean = builder.createBean();
+ * </pre>
+ *
+ *
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerMethodBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerMethodBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/ProducerMethodBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -39,8 +39,19 @@
import org.jboss.webbeans.util.Names;
/**
- * Builder for a producer method bean
+ * Builder for a producer method bean. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * WBMethod<T, ?> method = ...;
+ * AbstractClassBean<?> declaringBean = ...;
+ *
+ * ProducerMethodBuilder<T> builder = ProducerMethodBuilder.of(method, declaringBean, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * ProducerMethod<T> bean = builder.createBean();
+ * </pre>
+
+ *
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/SessionBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/SessionBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/SessionBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -49,8 +49,17 @@
import org.jboss.webbeans.util.Proxies;
/**
- * Builder for session beans
+ * Builder for session beans. Usage:
*
+ * <pre>
+ * BeanManager beanManager = ...;
+ * InternalEjbDescriptor<T> ejbDescriptor;
+ *
+ * SessionBeanBuilder<T> builder = SessionBeanBuilder.of(ejbDescriptor, beanManager);
+ * builder.initialize(beanDeployerEnvironment);
+ * SessionBean<T> bean = builder.createBean();
+ * </pre>
+ *
* @author Pete Muir
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
*
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/BeanBuilderFactory.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/BeanBuilderFactory.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/BeanBuilderFactory.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -28,6 +28,7 @@
/**
+ * Singleton factory to create the builders.
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
@@ -54,9 +55,26 @@
return INSTANCE;
}
+ /**
+ * Create a builder for simple managed beans
+ * @param beanManager The current bean manager
+ * @param type the class we want to create beans for
+ * @return a simple bean builder instance
+ */
public abstract <T> SimpleBeanBuilder<T> getSimpleBeanBuilder(BeanManager beanManager, AnnotatedType<T> type);
+ /**
+ * Create a builder for enterprise beans
+ * @param beanManager The current bean manager
+ * @param type the ejb descriptor we want to create beans for
+ * @return a simple bean builder instance
+ */
public abstract <T> EnterpriseBeanBuilder<T> getEnterpriseBeanBuilder(BeanManager beanManager, EjbDescriptor<T> type);
+ /**
+ * Create a builder for decorator beans
+ * @param beanManager The current bean manager
+ * @type the class we want to create beans for
+ */
public abstract <T> DecoratorBeanBuilder<T> getDecoratorBeanBuilder(BeanManager beanManager, AnnotatedType<T> type);
}
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/DecoratorBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/DecoratorBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/DecoratorBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -24,11 +24,16 @@
import javax.enterprise.inject.spi.Bean;
/**
+ * Builder to create a decorator
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
public interface DecoratorBeanBuilder<T>
{
+ /**
+ * Get the decorator beans
+ * @return a decorator bean
+ */
Bean<T> getBean();
}
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/EnterpriseBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/EnterpriseBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/EnterpriseBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -23,6 +23,7 @@
/**
+ * Builder to create enterprise beans
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/ManagedBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/ManagedBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/ManagedBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -27,19 +27,39 @@
import javax.enterprise.inject.spi.ObserverMethod;
/**
- *
+ * Interface to obtain managed beans
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
public interface ManagedBeanBuilder<T>
{
+ /**
+ * Get all the beans created
+ * @return a set of all the beans created
+ */
Set<Bean<?>> getBeans();
+ /**
+ * Get the main bean created
+ * @return the main bean
+ */
Bean<T> getBean();
+ /**
+ * Get the @New bean created
+ * @return the @New bean
+ */
Bean<T> getNewBean();
+ /**
+ * Get the producer beans created
+ * @return the producer beans
+ */
Set<Bean<?>> getProducerBeans();
+ /**
+ * Get the observer methods created
+ * @return the observer methods
+ */
Set<ObserverMethod<T, ?>> getObserverMethods();
}
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/SimpleBeanBuilder.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/SimpleBeanBuilder.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/builder/spi/SimpleBeanBuilder.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -23,6 +23,7 @@
/**
+ * Builder to create simle managed beans
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/EEResourceProducerField.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/EEResourceProducerField.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/EEResourceProducerField.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -38,11 +38,21 @@
{
/**
- * Creates an EE resource producer field
+ * Creates an EE resource producer field. This method should not be called,
+ * instead use ProducerFieldBuilder.
*
- * @param field The underlying method abstraction
+ * @param field The underlying field abstraction
* @param declaringBean The declaring bean abstraction
* @param manager the current manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ *
* @return A producer field
*/
public static <T> EEResourceProducerField<T> of(WBField<T, ?> field,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/PersistenceContextProducerField.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/PersistenceContextProducerField.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bean/ee/PersistenceContextProducerField.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -36,11 +36,21 @@
{
/**
- * Creates an EE resource producer field
+ * Creates an EE resource producer field. This method should not be called,
+ * instead use ProducerFieldBuilder.
*
- * @param field The underlying method abstraction
+ * @param field The underlying field abstraction
* @param declaringBean The declaring bean abstraction
* @param manager the current manager
+ * @param name The name
+ * @param type The type of the bean
+ * @param types The types of the bean
+ * @param mergedStereotypes The stereotypes
+ * @param scopeType The @Scope annotated annotation
+ * @param policy If the bean has a policy
+ * @param proxyable Is the bean proxyable
+ * @param bindings The bean's bindings
+ *
* @return A producer field
*/
public static <T extends EntityManager> EEResourceProducerField<T> of(WBField<T, ?> field,
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bootstrap/ExtensionBeanDeployer.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bootstrap/ExtensionBeanDeployer.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/bootstrap/ExtensionBeanDeployer.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -69,7 +69,7 @@
getEnvironment().addBean(bean);
getManager().addBean(bean);
- InternalObserverMethodBuilder<Extension> observerMethodBuilder = getBeanBuilderFactory().getInternalObserverMethodBuilder(getManager(), clazz);
+ InternalObserverMethodBuilder<Extension> observerMethodBuilder = getBeanBuilderFactory().getInternalObserverMethodBuilder(getManager());
observerMethodBuilder.createObserverMethods(bean, clazz);
}
return this;
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ClassBeanDeploymentItem.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ClassBeanDeploymentItem.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ClassBeanDeploymentItem.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -38,11 +38,12 @@
import org.jboss.webbeans.log.Logging;
/**
+ * Represents a simple bean or an enterprise bean
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
-public abstract class ClassBeanDeploymentItem<T> extends DeploymentItem<T>
+abstract class ClassBeanDeploymentItem<T> extends DeploymentItem<T>
{
private static final LogProvider log = Logging.getLogProvider(ClassBeanDeploymentItem.class);
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DecoratorDeploymentItem.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DecoratorDeploymentItem.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DecoratorDeploymentItem.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -35,11 +35,12 @@
import org.jboss.webbeans.log.Logging;
/**
- *
+ * Represents a decorator
+ *
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
-public class DecoratorDeploymentItem<T> extends DeploymentItem<T>
+class DecoratorDeploymentItem<T> extends DeploymentItem<T>
{
private static final LogProvider log = Logging.getLogProvider(ClassBeanDeploymentItem.class);
@@ -54,7 +55,7 @@
}
@Override
- public void initialiseBeans(BeanManagerImpl manager, BeanDeployerEnvironment environment)
+ void initialiseBeans(BeanManagerImpl manager, BeanDeployerEnvironment environment)
{
DecoratorBeanBuilder<T> builder = BeanBuilderFactory.getInstance().getDecoratorBeanBuilder(manager, getWBClass());
setValues((Set<ObserverMethod<T, ?>>)null, builder.getBean());
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DeploymentItem.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DeploymentItem.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/DeploymentItem.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -33,6 +33,7 @@
import org.jboss.webbeans.introspector.WBClass;
/**
+ * Wraps a Decorator, Simple bean or a managed bean in the sorter.
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
@@ -93,10 +94,18 @@
{
return toString;
}
- toString = "WBClassDeploymentItem{" + clazz.toString() + "}";
+ toString = this.getClass().getSimpleName() + "{" + clazz.toString() + "}";
return toString;
}
+ /**
+ * Takes the class or ejb descriptor wrapped by this item and deploys them in the bean manager.
+ * Any found observer methods are returned.
+ *
+ * @param manager the bean manager to use
+ * @param environment the bean deployer environment to use
+ * @return The observer methods on the beans, or an empty set if none
+ */
public Set<ObserverMethod<T, ?>> deployBeans(BeanManagerImpl manager, BeanDeployerEnvironment environment)
{
initialiseBeans(manager, environment);
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ManagedBeanDeploymentItem.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ManagedBeanDeploymentItem.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/ManagedBeanDeploymentItem.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -29,11 +29,12 @@
import org.jboss.webbeans.introspector.WBClass;
/**
+ * Represents a simple bean
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
-public class ManagedBeanDeploymentItem<T> extends ClassBeanDeploymentItem<T>
+class ManagedBeanDeploymentItem<T> extends ClassBeanDeploymentItem<T>
{
private ManagedBeanDeploymentItem(Sorter sorter, WBClass<T> clazz)
{
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/SessionBeanDeploymentItem.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/SessionBeanDeploymentItem.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/SessionBeanDeploymentItem.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -32,11 +32,12 @@
import org.jboss.webbeans.resources.ClassTransformer;
/**
+ * Represents an enterprise bean
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
*/
-public class SessionBeanDeploymentItem<T> extends ClassBeanDeploymentItem<T>
+class SessionBeanDeploymentItem<T> extends ClassBeanDeploymentItem<T>
{
private InternalEjbDescriptor<T> ejbDescriptor;
Modified: ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/Sorter.java
===================================================================
--- ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/Sorter.java 2009-09-22 15:13:35 UTC (rev 3733)
+++ ri/branches/kabir-builder/impl/src/main/java/org/jboss/webbeans/builder/sorter/Sorter.java 2009-09-22 15:17:52 UTC (rev 3734)
@@ -41,6 +41,8 @@
import org.jboss.webbeans.util.Reflections;
/**
+ * Takes all the classes and ejb descriptors in a deployment and sorts them according to their
+ * dependencies. Classes/ejb descriptors with no dependencies come first.
*
* @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
* @version $Revision: 1.1 $
@@ -75,6 +77,13 @@
this.servletApiAbstraction = servletApiAbstraction;
}
+ /**
+ * Creates a sorter
+ * @param beanManager The bean manager
+ * @param classes The web bean classes
+ * @param ejbDescriptors The ejb descriptors
+ * @return a sorter
+ */
public static Sorter createSorter(BeanManagerImpl beanManager, Set<WBClass<?>> classes, EjbDescriptors ejbDescriptors)
{
EJBApiAbstraction ejbApiAbstraction = beanManager.getServices().get(EJBApiAbstraction.class);
@@ -115,6 +124,10 @@
}
}
+ /**
+ * Sorts the classes and ejb descriptors
+ * @return a list of deployment items wrapping the classes/ejb descriptors
+ */
public List<DeploymentItem<?>> sort()
{
//No need to sort the disposal method beans anymore since the disposal method must be in the same bean
More information about the weld-commits
mailing list