[jboss-cvs] JBossAS SVN: r91912 - projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sat Aug 1 15:24:57 EDT 2009


Author: jaikiran
Date: 2009-08-01 15:24:57 -0400 (Sat, 01 Aug 2009)
New Revision: 91912

Added:
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbMethodMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeanMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/TransactionAttribute.java
Removed:
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodMetaData.java
Modified:
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ApplicationExceptionMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/AssemblyDescriptorMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ContainerTransactionMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbJarMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeansMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ExcludeListMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorBindingMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorOrderMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorsMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MessageDrivenBeanMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodPermissionMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/RelationshipsMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SecurityRoleMetaData.java
   projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SessionBeanMetaData.java
Log:
EJBTHREE-1791 Javadocs and other preliminary work on metadata-spi

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ApplicationExceptionMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ApplicationExceptionMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ApplicationExceptionMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,18 +1,18 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
 
 /**
- * 
- * 
+ *
+ *
  *         The application-exceptionType declares an application
  *         exception. The declaration consists of:
- * 
+ *
  *             - the exception class. When the container receives
  *               an exception of this type, it is required to
  *               forward this exception as an applcation exception
@@ -22,13 +22,13 @@
  *               set to true, the container must rollback the current
  *               transaction before forwarding the exception to the
  *               client.  If not specified, it defaults to false.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for application-exceptionType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="application-exceptionType">
  *   &lt;complexContent>
@@ -42,70 +42,46 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface ApplicationExceptionMetaData
+public interface ApplicationExceptionMetaData extends IdMetaData
 {
 
    /**
-    * Gets the value of the exceptionClass property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link FullyQualifiedClassType }
-    *     
+    * @return Returns the fully qualified name of the
+    * exception class
+    *
     */
-   String getExceptionClass();
+   String getExceptionClassname();
 
    /**
-    * Sets the value of the exceptionClass property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link FullyQualifiedClassType }
-    *     
+    * Sets the fully qualified name of the exception class
+    *
+    * @param exceptionClass Fully qualified name of the exception
+    * class
+    *
     */
-   void setExceptionClass(String value);
+   void setExceptionClassname(String value);
 
    /**
     * Gets the value of the rollback property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link TrueFalseType }
-    *     
+    *
+    * @return Returns true if the current transaction has to be
+    * rolled back if the exception represented by {@link #getExceptionClassname()}
+    * is thrown
+    *
     */
-   boolean getRollback();
+   boolean isRollback();
 
    /**
-    * Sets the value of the rollback property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link TrueFalseType }
-    *     
+    * Set to true if the current transaction has to be
+    * rolled back if the exception represented by {@link #getExceptionClassname()}
+    * is thrown
+    *
+    * @param rollback True if the current transaction has to be rolled back, false
+    * otherwise
     */
    void setRollback(boolean value);
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/AssemblyDescriptorMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/AssemblyDescriptorMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/AssemblyDescriptorMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,20 +1,21 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
 
 import java.util.List;
+import java.util.Set;
 
 /**
- * 
- * 
+ *
+ *
  * 	The assembly-descriptorType defines
  * 	application-assembly information.
- * 
+ *
  * 	The application-assembly information consists of the
  * 	following parts: the definition of security roles, the
  * 	definition of method permissions, the definition of
@@ -23,19 +24,19 @@
  *         of interceptor bindings, a list of
  * 	methods to be excluded from being invoked, and a list of
  *         exception types that should be treated as application exceptions.
- * 
+ *
  * 	All the parts are optional in the sense that they are
  * 	omitted if the lists represented by them are empty.
- * 
+ *
  * 	Providing an assembly-descriptor in the deployment
  * 	descriptor is optional for the ejb-jar file producer.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for assembly-descriptorType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="assembly-descriptorType">
  *   &lt;complexContent>
@@ -54,194 +55,143 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface AssemblyDescriptorMetaData
+public interface AssemblyDescriptorMetaData extends IdMetaData
 {
 
    /**
-    * Gets the value of the securityRole property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the securityRole property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getSecurityRole().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link SecurityRoleMetaData }
-    * 
-    * 
+    * @return Returns the security roles configured in the assembly-descriptor
+    * element
+    *
+    * Returns an empty list if no security roles have been configured
+    *
+    * Note that its upto the implementations to either return a modifiable
+    * {@link List} or an umodifiable one.
+    *
     */
-   List<SecurityRoleMetaData> getSecurityRole();
+   List<SecurityRoleMetaData> getSecurityRoles();
 
    /**
-    * Gets the value of the methodPermission property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the methodPermission property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getMethodPermission().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link MethodPermissionMetaData }
-    * 
-    * 
+    * Sets the security roles configured in this assembly-descriptor
+    *
+    * @param securityRoles List of security roles
     */
-   List<MethodPermissionMetaData> getMethodPermission();
+   void setSecurityRoles(List<SecurityRoleMetaData> securityRoles);
 
    /**
-    * Gets the value of the containerTransaction property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the containerTransaction property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getContainerTransaction().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link ContainerTransactionMetaData }
-    * 
-    * 
+    * The method-permissionType specifies that one or more
+    * security roles are allowed to invoke one or more enterprise
+    * bean methods.
+    *
+    * @return Returns a list of method permissions
+    *
     */
-   List<ContainerTransactionMetaData> getContainerTransaction();
+   List<MethodPermissionMetaData> getMethodPermissions();
 
    /**
-    * Gets the value of the interceptorBinding property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the interceptorBinding property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getInterceptorBinding().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link InterceptorBindingMetaData }
-    * 
-    * 
+    * Sets the method permissions configuring the methods and security
+    * roles which are allowed access to the methods
+    *
+    * @param methodPermissions
     */
-   List<InterceptorBindingMetaData> getInterceptorBinding();
+   void setMethodPermissions(List<MethodPermissionMetaData> methodPermissions);
 
    /**
+    * @return Returns the list of container transaction configurations
+    *
+    *
+    */
+   List<ContainerTransactionMetaData> getContainerTransactions();
+
+   /**
+    * Configures the container transactions for this assembly-descriptor
+    *
+    * @param containerTransactions
+    */
+   void setContainerTransactions(List<ContainerTransactionMetaData> containerTransactions);
+
+   /**
+    * @return Returns the interceptor bindings configured in this assembly descriptor
+    *
+    */
+   List<InterceptorBindingMetaData> getInterceptorBindings();
+
+   /**
+    * Sets the interceptor bindings associated with this assembly descriptor
+    *
+    * @param interceptorBindings
+    */
+   void setInterceptorBindings(List<InterceptorBindingMetaData> interceptorBindings);
+
+   /**
     * Gets the value of the messageDestination property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the messageDestination property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getMessageDestination().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link MessageDestinationMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<MessageDestinationMetaData> getMessageDestination();
 
    /**
     * Gets the value of the excludeList property.
-    * 
+    *
     * @return
     *     possible object is
     *     {@link ExcludeListMetaData }
-    *     
+    *
     */
    ExcludeListMetaData getExcludeList();
 
    /**
     * Sets the value of the excludeList property.
-    * 
+    *
     * @param value
     *     allowed object is
     *     {@link ExcludeListMetaData }
-    *     
+    *
     */
    void setExcludeList(ExcludeListMetaData value);
 
    /**
     * Gets the value of the applicationException property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the applicationException property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getApplicationException().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ApplicationExceptionMetaData }
-    * 
-    * 
+    *
+    *
     */
-   List<ApplicationExceptionMetaData> getApplicationException();
+   List<ApplicationExceptionMetaData> getApplicationExceptions();
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
 
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ContainerTransactionMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ContainerTransactionMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ContainerTransactionMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,30 +1,31 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
 
 import java.util.List;
+import java.util.Set;
 
 /**
- * 
- * 
+ *
+ *
  * 	The container-transactionType specifies how the container
  * 	must manage transaction scopes for the enterprise bean's
  * 	method invocations. It defines an optional description, a
  * 	list of method elements, and a transaction attribute. The
  * 	transaction attribute is to be applied to all the specified
  * 	methods.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for container-transactionType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="container-transactionType">
  *   &lt;complexContent>
@@ -39,98 +40,69 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface ContainerTransactionMetaData
+public interface ContainerTransactionMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
-    * Gets the value of the method property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the method property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getMethod().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link MethodMetaData }
-    * 
-    * 
+    * @return Returns the methods which are configured for container managed transactions
+    *
+    * Returns an empty list if no methods have been configured for CMT
+    *
+    * Note that its upto the implementations to either return a modifiable
+    * {@link Set} or an umodifiable one.
+    *
     */
-   List<MethodMetaData> getMethod();
+   List<EjbMethodMetaData> getMethods();
 
    /**
-    * Gets the value of the transAttribute property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link TransAttributeType }
-    *     
+    *
+    * @param methods Sets the methods for container managed transactions
+    *
     */
-   String getTransAttribute();
+   void setMethods(List<EjbMethodMetaData> methods);
 
    /**
-    * Sets the value of the transAttribute property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link TransAttributeType }
-    *     
+    * @return Returns the {@link TransactionAttribute} associated with the
+    * methods returned by {@link #getMethods()}
+    *
     */
-   void setTransAttribute(String value);
+   TransactionAttribute getTransAttribute();
 
    /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
+    * Sets the {@link TransactionAttribute} associated with the methods returned by
+    * {@link #getMethods()}
+    *
+    * @param txAttribute {@link TransactionAttribute} associated with the
+    * method of the bean
     */
-   java.lang.String getId();
+   void setTransAttribute(TransactionAttribute txAttribute);
 
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
 
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbJarMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbJarMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbJarMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,23 +1,20 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
 
 import java.util.List;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
 
 /**
- * 
- * 
+ * Represents the metadata for the ejb-jar element
+ *
  * 	The ejb-jarType defines the root element of the EJB
  * 	deployment descriptor. It contains
- * 
+ *
  * 	    - an optional description of the ejb-jar file
  * 	    - an optional display name
  * 	    - an optional icon that contains a small and a large
@@ -31,13 +28,13 @@
  * 	    - an optional application-assembly descriptor
  * 	    - an optional name of an ejb-client-jar file for the
  * 	      ejb-jar.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for ejb-jarType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="ejb-jarType">
  *   &lt;complexContent>
@@ -57,230 +54,225 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface EjbJarMetaData
+public interface EjbJarMetaData extends IdMetaData
 {
 
    /**
-    * 
-    * 
-    */
-   @XmlAttribute(required = true)
-   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
-   public final static java.lang.String VERSION = "3.0";
-
-   /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
     * Gets the value of the displayName property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the displayName property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDisplayName().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DisplayNameMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DisplayNameMetaData> getDisplayName();
 
    /**
     * Gets the value of the icon property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the icon property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getIcon().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link IconType }
-    * 
-    * 
+    *
+    *
     */
    List<IconType> getIcon();
 
    /**
-    * Gets the value of the enterpriseBeans property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link EnterpriseBeansMetaData }
-    *     
+    *
+    *
+    * @return Returns the enterprise beans associated with this ejb jar
+    *
     */
    EnterpriseBeansMetaData getEnterpriseBeans();
 
    /**
-    * Sets the value of the enterpriseBeans property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link EnterpriseBeansMetaData }
-    *     
+    * Sets the enterprise beans associated with this ejb jar
+    *
+    * @param enterpriseBeans
+    *
     */
-   void setEnterpriseBeans(EnterpriseBeansMetaData value);
+   void setEnterpriseBeans(EnterpriseBeansMetaData enterpriseBeans);
 
    /**
-    * Gets the value of the interceptors property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link InterceptorsMetaData }
-    *     
+    *
+    * @return Returns the interceptors that have been declared in this
+    * EJB deployment
+    *
     */
    InterceptorsMetaData getInterceptors();
 
    /**
-    * Sets the value of the interceptors property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link InterceptorsMetaData }
-    *     
+    * Sets the interceptors associated with this EJB deployment
+    *
+    * @param interceptors
+    *
     */
-   void setInterceptors(InterceptorsMetaData value);
+   void setInterceptors(InterceptorsMetaData interceptors);
 
    /**
     * Gets the value of the relationships property.
-    * 
+    *
     * @return
     *     possible object is
     *     {@link RelationshipsMetaData }
-    *     
+    *
     */
    RelationshipsMetaData getRelationships();
 
    /**
     * Sets the value of the relationships property.
-    * 
+    *
     * @param value
     *     allowed object is
     *     {@link RelationshipsMetaData }
-    *     
+    *
     */
    void setRelationships(RelationshipsMetaData value);
 
    /**
     * Gets the value of the assemblyDescriptor property.
-    * 
+    *
     * @return
     *     possible object is
     *     {@link AssemblyDescriptorMetaData }
-    *     
+    *
     */
    AssemblyDescriptorMetaData getAssemblyDescriptor();
 
    /**
     * Sets the value of the assemblyDescriptor property.
-    * 
+    *
     * @param value
     *     allowed object is
     *     {@link AssemblyDescriptorMetaData }
-    *     
+    *
     */
    void setAssemblyDescriptor(AssemblyDescriptorMetaData value);
 
    /**
-    * Gets the value of the ejbClientJar property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link PathType }
-    *     
+    * The optional ejb-client-jar element specifies a JAR
+    * file that contains the class files necessary for a
+    * client program to access the enterprise beans in the ejb-jar file.
+    *
+    * @return Returns the jar file name (ex: employee_service_client.jar)
+    *
     */
    String getEjbClientJar();
 
    /**
-    * Sets the value of the ejbClientJar property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link PathType }
-    *     
+    * The optional ejb-client-jar element specifies a JAR
+    * file that contains the class files necessary for a
+    * client program to access the enterprise beans in the ejb-jar file.
+    *
+    * @param ejbClientJar The name of the ejb client jar file
+    *
     */
-   void setEjbClientJar(String value);
+   void setEjbClientJar(String ejbClientJar);
 
    /**
-    * Gets the value of the metadataComplete property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link Boolean }
-    *     
+    *  The metadata-complete attribute defines whether the
+    *  deployment descriptor and other related deployment
+    *  descriptors for this module (e.g., web service
+    * descriptors) are complete, or whether the class
+    * files available to this module and packaged with
+    * this application should be examined for annotations
+    *  that specify deployment information.
+    *
+    *  If metadata-complete is set to "true", the deployment
+    *  tool will ignore any annotations that specify deployment
+    *  information, which might be present in the class files
+    *  of the application.
+    *
+    *  If metadata-complete is not specified or is set to
+    *  "false", the deployment tool will examine the class
+    *  files of the application for annotations, as
+    *  specified by the specifications.
+    *
+    *
+    * @return Returns true if metadata-complete attribute is set to true.
+    * Else returns false.
+    *
     */
-   Boolean isMetadataComplete();
+   boolean isMetadataComplete();
 
    /**
-    * Sets the value of the metadataComplete property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link Boolean }
-    *     
+    *  The metadata-complete attribute defines whether the
+    *  deployment descriptor and other related deployment
+    *  descriptors for this module (e.g., web service
+    * descriptors) are complete, or whether the class
+    * files available to this module and packaged with
+    * this application should be examined for annotations
+    *  that specify deployment information.
+    *
+    *  If metadata-complete is set to "true", the deployment
+    *  tool will ignore any annotations that specify deployment
+    *  information, which might be present in the class files
+    *  of the application.
+    *
+    *  If metadata-complete is not specified or is set to
+    *  "false", the deployment tool will examine the class
+    *  files of the application for annotations, as
+    *  specified by the specifications.
+    *
+    * @param metadataComplete Set to true if class files scanning for annotations
+    * has to be disabled. Else set to false.
+    *
     */
-   void setMetadataComplete(Boolean value);
+   void setMetadataComplete(boolean metadataComplete);
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Added: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbMethodMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbMethodMetaData.java	                        (rev 0)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EjbMethodMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -0,0 +1,302 @@
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
+//
+
+package org.jboss.ejb3.metadata.spi.javaee;
+
+import java.util.List;
+
+/**
+ *
+ *
+ *
+ * 	  The methodType is used to denote a method of an enterprise
+ * 	  bean's business, home, component, and/or web service endpoint
+ * 	  interface, or, in the case of a message-driven bean, the
+ * 	  bean's message listener method, or a set of such
+ * 	  methods. The ejb-name element must be the name of one of the
+ * 	  enterprise beans declared in the deployment descriptor; the
+ * 	  optional method-intf element allows to distinguish between a
+ * 	  method with the same signature that is multiply defined
+ * 	  across the business, home, component, and/or web service
+ *           endpoint nterfaces; the method-name element specifies the
+ *           method name; and the optional method-params elements identify
+ *           a single method among multiple methods with an overloaded
+ * 	  method name.
+ *
+ * 	  There are three possible styles of using methodType element
+ * 	  within a method element:
+ *
+ * 	  1.
+ * 	  <method>
+ * 	      <ejb-name>EJBNAME</ejb-name>
+ * 	      <method-name>*</method-name>
+ * 	  </method>
+ *
+ * 	     This style is used to refer to all the methods of the
+ * 	     specified enterprise bean's business, home, component,
+ *              and/or web service endpoint interfaces.
+ *
+ * 	  2.
+ * 	  <method>
+ * 	      <ejb-name>EJBNAME</ejb-name>
+ * 	      <method-name>METHOD</method-name>
+ * 	  </method>
+ *
+ * 	     This style is used to refer to the specified method of
+ * 	     the specified enterprise bean. If there are multiple
+ * 	     methods with the same overloaded name, the element of
+ * 	     this style refers to all the methods with the overloaded
+ * 	     name.
+ *
+ * 	  3.
+ * 	  <method>
+ * 	      <ejb-name>EJBNAME</ejb-name>
+ * 	      <method-name>METHOD</method-name>
+ * 	      <method-params>
+ * 		  <method-param>PARAM-1</method-param>
+ * 		  <method-param>PARAM-2</method-param>
+ * 		  ...
+ * 		  <method-param>PARAM-n</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	     This style is used to refer to a single method within a
+ * 	     set of methods with an overloaded name. PARAM-1 through
+ * 	     PARAM-n are the fully-qualified Java types of the
+ * 	     method's input parameters (if the method has no input
+ * 	     arguments, the method-params element contains no
+ * 	     method-param elements). Arrays are specified by the
+ * 	     array element's type, followed by one or more pair of
+ * 	     square brackets (e.g. int[][]). If there are multiple
+ * 	     methods with the same overloaded name, this style refers
+ * 	     to all of the overloaded methods.
+ *
+ * 	  Examples:
+ *
+ * 	  Style 1: The following method element refers to all the
+ * 	  methods of the EmployeeService bean's business, home,
+ *           component, and/or web service endpoint interfaces:
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-name>*</method-name>
+ * 	  </method>
+ *
+ * 	  Style 2: The following method element refers to all the
+ * 	  create methods of the EmployeeService bean's home
+ * 	  interface(s).
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-name>create</method-name>
+ * 	  </method>
+ *
+ * 	  Style 3: The following method element refers to the
+ * 	  create(String firstName, String LastName) method of the
+ * 	  EmployeeService bean's home interface(s).
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-name>create</method-name>
+ * 	      <method-params>
+ * 		  <method-param>java.lang.String</method-param>
+ * 		  <method-param>java.lang.String</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	  The following example illustrates a Style 3 element with
+ * 	  more complex parameter types. The method
+ * 	  foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
+ * 	  mypackage.MyClass[][] myclaar) would be specified as:
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-name>foobar</method-name>
+ * 	      <method-params>
+ * 		  <method-param>char</method-param>
+ * 		  <method-param>int</method-param>
+ * 		  <method-param>int[]</method-param>
+ * 		  <method-param>mypackage.MyClass</method-param>
+ * 		  <method-param>mypackage.MyClass[][]</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	  The optional method-intf element can be used when it becomes
+ * 	  necessary to differentiate between a method that is multiply
+ * 	  defined across the enterprise bean's business, home, component,
+ *           and/or web service endpoint interfaces with the same name and
+ * 	  signature. However, if the same method is a method of both the
+ *           local business interface, and the local component interface,
+ *           the same attribute applies to the method for both interfaces.
+ *           Likewise, if the same method is a method of both the remote
+ *           business interface and the remote component interface, the same
+ *           attribute applies to the method for both interfaces.
+ *
+ * 	  For example, the method element
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-intf>Remote</method-intf>
+ * 	      <method-name>create</method-name>
+ * 	      <method-params>
+ * 		  <method-param>java.lang.String</method-param>
+ * 		  <method-param>java.lang.String</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	  can be used to differentiate the create(String, String)
+ * 	  method defined in the remote interface from the
+ * 	  create(String, String) method defined in the remote home
+ * 	  interface, which would be defined as
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-intf>Home</method-intf>
+ * 	      <method-name>create</method-name>
+ * 	      <method-params>
+ * 		  <method-param>java.lang.String</method-param>
+ * 		  <method-param>java.lang.String</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	  and the create method that is defined in the local home
+ * 	  interface which would be defined as
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-intf>LocalHome</method-intf>
+ * 	      <method-name>create</method-name>
+ * 	      <method-params>
+ * 		  <method-param>java.lang.String</method-param>
+ * 		  <method-param>java.lang.String</method-param>
+ * 	      </method-params>
+ * 	  </method>
+ *
+ * 	  The method-intf element can be used with all three Styles
+ * 	  of the method element usage. For example, the following
+ * 	  method element example could be used to refer to all the
+ * 	  methods of the EmployeeService bean's remote home interface
+ *           and the remote business interface.
+ *
+ * 	  <method>
+ * 	      <ejb-name>EmployeeService</ejb-name>
+ * 	      <method-intf>Home</method-intf>
+ * 	      <method-name>*</method-name>
+ * 	  </method>
+ *
+ *
+ *
+ *
+ * <p>Java class for methodType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * &lt;complexType name="methodType">
+ *   &lt;complexContent>
+ *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       &lt;sequence>
+ *         &lt;element name="description" type="{http://java.sun.com/xml/ns/javaee}descriptionType" maxOccurs="unbounded" minOccurs="0"/>
+ *         &lt;element name="ejb-name" type="{http://java.sun.com/xml/ns/javaee}ejb-nameType"/>
+ *         &lt;element name="method-intf" type="{http://java.sun.com/xml/ns/javaee}method-intfType" minOccurs="0"/>
+ *         &lt;element name="method-name" type="{http://java.sun.com/xml/ns/javaee}method-nameType"/>
+ *         &lt;element name="method-params" type="{http://java.sun.com/xml/ns/javaee}method-paramsType" minOccurs="0"/>
+ *       &lt;/sequence>
+ *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *     &lt;/restriction>
+ *   &lt;/complexContent>
+ * &lt;/complexType>
+ * </pre>
+ *
+ *
+ */
+public interface EjbMethodMetaData extends IdMetaData
+{
+
+   /**
+    * Gets the value of the description property.
+    *
+    * <p>
+    * This accessor method returns a reference to the live list,
+    * not a snapshot. Therefore any modification you make to the
+    * returned list will be present inside the JAXB object.
+    * This is why there is not a <CODE>set</CODE> method for the description property.
+    *
+    * <p>
+    * For example, to add a new item, do as follows:
+    * <pre>
+    *    getDescription().add(newItem);
+    * </pre>
+    *
+    *
+    * <p>
+    * Objects of the following type(s) are allowed in the list
+    * {@link DescriptionMetaData }
+    *
+    *
+    */
+   List<DescriptionMetaData> getDescription();
+
+   /**
+    * Gets the value of the ejbName property.
+    *
+    * @return Returns the name of the EJB corresponding to this bean
+    * method
+    */
+   String getEjbName();
+
+   /**
+    * Sets the name of the EJB corresponding to this bean method
+    *
+    * @param beanName The name of the EJB
+    *
+    */
+   void setEjbName(String beanName);
+
+   /**
+    * @return Returns the fully qualified name of the business interface
+    * of the bean, to which this method belongs
+    *
+    */
+   String getMethodIntferace();
+
+   /**
+    * @param interfaceName Fully qualified name of the business interface
+    * of the bean, to which this method belongs
+    *
+    */
+   void setMethodIntface(String interfaceName);
+
+   /**
+    * @return Returns the name of the method
+    *
+    */
+   String getMethodName();
+
+   /**
+    * Sets the name of the method
+    *
+    * @param methodName Name of the method
+    *
+    */
+   void setMethodName(String methodName);
+
+   /**
+    * @return Returns the method parameters represented by this method
+    */
+   MethodParamsMetaData getMethodParams();
+
+   /**
+    * Sets the method params of this method
+    *
+    * @param methodParams The method params of this method
+    *
+    */
+   void setMethodParams(MethodParamsMetaData methodParams);
+
+
+}

Added: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeanMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeanMetaData.java	                        (rev 0)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeanMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -0,0 +1,354 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.metadata.spi.javaee;
+
+import java.util.List;
+
+/**
+ *
+ * EnterpriseBeanMetaData
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public interface EnterpriseBeanMetaData extends IdMetaData
+{
+   /**
+    * Gets the value of the description property.
+    *
+    * <p>
+    * This accessor method returns a reference to the live list,
+    * not a snapshot. Therefore any modification you make to the
+    * returned list will be present inside the JAXB object.
+    * This is why there is not a <CODE>set</CODE> method for the description property.
+    *
+    * <p>
+    * For example, to add a new item, do as follows:
+    * <pre>
+    *    getDescription().add(newItem);
+    * </pre>
+    *
+    *
+    * <p>
+    * Objects of the following type(s) are allowed in the list
+    * {@link DescriptionMetaData }
+    *
+    *
+    */
+   List<DescriptionMetaData> getDescription();
+
+   /**
+    * Gets the value of the displayName property.
+    *
+    * <p>
+    * This accessor method returns a reference to the live list,
+    * not a snapshot. Therefore any modification you make to the
+    * returned list will be present inside the JAXB object.
+    * This is why there is not a <CODE>set</CODE> method for the displayName property.
+    *
+    * <p>
+    * For example, to add a new item, do as follows:
+    * <pre>
+    *    getDisplayName().add(newItem);
+    * </pre>
+    *
+    *
+    * <p>
+    * Objects of the following type(s) are allowed in the list
+    * {@link DisplayNameMetaData }
+    *
+    *
+    */
+   List<DisplayNameMetaData> getDisplayName();
+
+   /**
+    * Gets the value of the icon property.
+    *
+    * <p>
+    * This accessor method returns a reference to the live list,
+    * not a snapshot. Therefore any modification you make to the
+    * returned list will be present inside the JAXB object.
+    * This is why there is not a <CODE>set</CODE> method for the icon property.
+    *
+    * <p>
+    * For example, to add a new item, do as follows:
+    * <pre>
+    *    getIcon().add(newItem);
+    * </pre>
+    *
+    *
+    * <p>
+    * Objects of the following type(s) are allowed in the list
+    * {@link IconType }
+    *
+    *
+    */
+   List<IconType> getIcon();
+
+   /**
+    * Returns the ejb name
+    *
+    */
+   String getEjbName();
+
+   /**
+    * Sets the ejb name
+    *
+    * @param name EJB name
+    */
+   void setEjbName(String name);
+
+   /**
+    * Returns the mapped-name of the bean.
+    * Returns null if there is no mapped-name for
+    * this bean
+    *
+    */
+   String getMappedName();
+
+   /**
+    * Sets the mapped-name of the bean
+    * @param mappedName The mapped-name of the bean
+    */
+   void setMappedName(String mappedName);
+
+   /**
+    * Returns the fully qualified classname of the bean implementation
+    * class.
+    *
+    */
+   String getEjbClass();
+
+   /**
+    * Sets the fully qualified classname of the bean implementation class.
+    *
+    * @param beanClass Fully qualified classname of the bean implementation
+    *
+    */
+   void setEjbClass(String beanClass);
+
+   /**
+    * Returns a list of env-entry metadata of this bean.
+    *
+    * Returns an empty list if there is no env-entry.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list.
+    *
+    *
+    */
+   List<EnvEntryMetaData> getEnvEntries();
+
+   /**
+    * Sets the list of env-entry metadata of this bean
+    *
+    * @param envEntries The list of env-entry of this bean
+    */
+   void setEnvEntries(List<EnvEntryMetaData> envEntries);
+
+
+
+   /**
+    * Returns the list of EJB references of this bean
+    * Returns an empty list if there is no EJB reference for this bean.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list.
+    *
+    *
+    */
+   List<EjbRefMetaData> getEjbRefs();
+
+   /**
+    * Sets the list of EJB references for this bean
+    *
+    * @param ejbRefs The list of EJB references
+    */
+   void setEjbRefs(List<EjbRefMetaData> ejbRefs);
+
+
+
+   /**
+    * Returns the list of EJB local references of this bean
+    * Returns an empty list if there is no EJB local reference for this bean.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list.
+    *
+    */
+   List<EjbLocalRefMetaData> getEjbLocalRefs();
+
+   /**
+    * Sets the list of EJB local references for this bean
+    *
+    * @param ejbLocalRefs The list of EJB local references
+    */
+   void setEjbLocalRefs(List<EjbLocalRefMetaData> ejbLocalRefs);
+
+
+
+   /**
+    * Returns the list of web service reference(s) of this bean.
+    * Returns an empty list if there are no such references.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list.
+    *
+    */
+   List<ServiceRefMetaData> getServiceRefs();
+
+   /**
+    * Sets the list of web service references for this bean
+    *
+    * @param serviceRefs The service references
+    */
+   void setServiceRefs(List<ServiceRefMetaData> serviceRefs);
+
+
+
+   /**
+    * @return Returns the list of resource references of this bean.
+    * Returns an empty list if there are no such references.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    *
+    */
+   List<ResourceRefMetaData> getResourceRefs();
+
+   /**
+    * Sets the resource references of this bean
+    *
+    * @param resourceRefs List of resource references of this bean
+    */
+   void setResourceRefs(List<ResourceRefMetaData> resourceRefs);
+
+
+
+   /**
+    * @return Returns the list of resource environment references of this bean.
+    * Returns an empty list if there are no such references.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    *
+    */
+   List<ResourceEnvRefMetaData> getResourceEnvRefs();
+
+   /**
+    * Sets the resource env references of this bean
+    *
+    * @param resourceEnvRefs
+    */
+   void setResourceEnvRefs(List<ResourceEnvRefMetaData> resourceEnvRefs);
+
+   /**
+    * @return Returns the list of persistence context references of this bean
+    *
+    * Returns an empty list if there are no such references.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    */
+   List<PersistenceContextRefMetaData> getPersistenceContextRefs();
+
+   /**
+    * Sets the list of persistence context references of this bean
+    *
+    * @param persistenceContextRefs The persistence context references
+    */
+   void setPeristenceContextRefs(List<PersistenceContextRefMetaData> persistenceContextRefs);
+
+
+
+   /**
+    * @returns Returns the persistence unit references associated with this bean
+    *
+    * Returns an empty list if there are no such references.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    */
+   List<PersistenceUnitRefMetaData> getPersistenceUnitRefs();
+
+   /**
+    * Sets the persistence unit references
+    *
+    * @param persistenceUnitRefs The persistence unit references of this bean
+    */
+   void setPersistenceUnitRefs(List<PersistenceUnitRefMetaData> persistenceUnitRefs);
+
+   /**
+    * @return Returns a list of post-construct methods associated with this bean
+    * Returns an empty list if there are no post-constructs.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    */
+   List<LifecycleCallbackMetaData> getPostConstructs();
+
+   /**
+    * Sets the post-constructs associated with this bean
+    *
+    * @param postConstructs The list of post-constructs
+    */
+   void setPostConstructs(List<LifecycleCallbackMetaData> postConstructs);
+
+
+
+   /**
+    * @return Returns a list of pre-destroy methods associated with this bean
+    * Returns an empty list if there are no pre-destroy callbacks for this bean.
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list
+    *
+    *
+    */
+   List<LifecycleCallbackMetaData> getPreDestroys();
+
+   /**
+    * Sets the list of pre-destroy callbacks associated with this bean
+    *
+    * @param preDestroys The list of pre-destroys for this bean
+    */
+   void setPreDestroys(List<LifecycleCallbackMetaData> preDestroys);
+
+   /**
+    * @return Returns the security identity associated with this bean
+    *
+    */
+   SecurityIdentityMetaData getSecurityIdentity();
+
+   /**
+    * Sets the security identity associated with this bean
+    *
+    * @param securityIdentity The security identity associated with this bean
+    *
+    */
+   void setSecurityIdentity(SecurityIdentityMetaData securityIdentity);
+}

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeansMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeansMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/EnterpriseBeansMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,18 +10,18 @@
 import java.util.List;
 
 /**
- * 
- * 
+ *
+ *
  * 	The enterprise-beansType declares one or more enterprise
  * 	beans. Each bean can be a session, entity or message-driven
  * 	bean.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for enterprise-beansType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="enterprise-beansType">
  *   &lt;complexContent>
@@ -36,56 +36,10 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface EnterpriseBeansMetaData
+public interface EnterpriseBeansMetaData extends List<EnterpriseBeanMetaData>
 {
 
-   /**
-    * Gets the value of the sessionOrEntityOrMessageDriven property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the sessionOrEntityOrMessageDriven property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getSessionOrEntityOrMessageDriven().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link EntityBeanMetaData }
-    * {@link MessageDrivenBeanMetaData }
-    * {@link SessionBeanMetaData }
-    * 
-    * 
-    */
-   List<Object> getSessionOrEntityOrMessageDriven();
-
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ExcludeListMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ExcludeListMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/ExcludeListMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -86,11 +86,11 @@
     * 
     * <p>
     * Objects of the following type(s) are allowed in the list
-    * {@link MethodMetaData }
+    * {@link EjbMethodMetaData }
     * 
     * 
     */
-   List<MethodMetaData> getMethod();
+   List<EjbMethodMetaData> getMethod();
 
    /**
     * Gets the value of the id property.

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorBindingMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorBindingMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorBindingMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,12 +10,12 @@
 import java.util.List;
 
 /**
- * 
- * 
+ *
+ *
  *         The interceptor-bindingType element describes the binding of
  *         interceptor classes to beans within the ejb-jar.
  *         It consists of :
- * 
+ *
  *           - An optional description.
  *           - The name of an ejb within the ejb-jar or the wildcard value "*",
  *             which is used to define interceptors that are bound to all
@@ -31,47 +31,47 @@
  *             a business method.
  *           - An optional set of method elements for describing the name/params
  *             of a method-level interceptor.
- * 
+ *
  *          Interceptors bound to all classes using the wildcard syntax
  *          "*" are default interceptors for the components in the ejb-jar.
  *          In addition, interceptors may be bound at the level of the bean
  *          class (class-level interceptors) or business methods (method-level
  *          interceptors ).
- * 
+ *
  *          The binding of interceptors to classes is additive.  If interceptors
  *          are bound at the class-level and/or default-level as well as the
  *          method-level, both class-level and/or default-level as well as
  *          method-level will apply.
- * 
+ *
  *          There are four possible styles of the interceptor element syntax :
- * 
+ *
  *          1.
- *          
+ *
  * <pre>
  * &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;interceptor-binding xmlns="http://www.w3.org/2001/XMLSchema" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;ejb-name&gt;*&lt;/ejb-name&gt;&lt;interceptor-class&gt;INTERCEPTOR&lt;/interceptor-class&gt;&lt;/interceptor-binding&gt;
  * </pre>
- * 
- * 
+ *
+ *
  *          Specifying the ejb-name as the wildcard value "*" designates
  *          default interceptors (interceptors that apply to all session and
  *          message-driven beans contained in the ejb-jar).
- * 
+ *
  *          2.
  * <pre>
  * &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;interceptor-binding xmlns="http://www.w3.org/2001/XMLSchema" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;ejb-name&gt;EJBNAME&lt;/ejb-name&gt;&lt;interceptor-class&gt;INTERCEPTOR&lt;/interceptor-class&gt;&lt;/interceptor-binding&gt;
  * </pre>
- * 
- * 
+ *
+ *
  *          This style is used to refer to interceptors associated with the
  *          specified enterprise bean(class-level interceptors).
- * 
+ *
  *          3.
- *          
+ *
  * <pre>
  * &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;interceptor-binding xmlns="http://www.w3.org/2001/XMLSchema" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;ejb-name&gt;EJBNAME&lt;/ejb-name&gt;&lt;interceptor-class&gt;INTERCEPTOR&lt;/interceptor-class&gt;&lt;method&gt;&lt;method-name&gt;METHOD&lt;/method-name&gt;&lt;/method&gt;&lt;/interceptor-binding&gt;
  * </pre>
- * 
- * 
+ *
+ *
  *          This style is used to associate a method-level interceptor with
  *          the specified enterprise bean.  If there are multiple methods
  *          with the same overloaded name, the element of this style refers
@@ -79,15 +79,15 @@
  *          interceptors can only be associated with business methods of the
  *          bean class.   Note that the wildcard value "*" cannot be used
  *          to specify method-level interceptors.
- * 
+ *
  *          4.
  * <pre>
  * &lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;interceptor-binding xmlns="http://www.w3.org/2001/XMLSchema" xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;&lt;ejb-name&gt;EJBNAME&lt;/ejb-name&gt;&lt;interceptor-class&gt;INTERCEPTOR&lt;/interceptor-class&gt;&lt;method&gt;&lt;method-name&gt;METHOD&lt;/method-name&gt;&lt;method-params&gt;&lt;method-param&gt;PARAM-1&lt;/method-param&gt;&lt;method-param&gt;PARAM-2&lt;/method-param&gt;
  *                ...
  *                &lt;method-param&gt;PARAM-N&lt;/method-param&gt;&lt;/method-params&gt;&lt;/method&gt;&lt;/interceptor-binding&gt;
  * </pre>
- * 
- * 
+ *
+ *
  *          This style is used to associate a method-level interceptor with
  *          the specified method of the specified enterprise bean.  This
  *          style is used to refer to a single method within a set of methods
@@ -97,13 +97,13 @@
  *          contains no method-param elements). Arrays are specified by the
  *          array element's type, followed by one or more pair of square
  *          brackets (e.g. int[][]).
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for interceptor-bindingType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="interceptor-bindingType">
  *   &lt;complexContent>
@@ -124,178 +124,122 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface InterceptorBindingMetaData
+public interface InterceptorBindingMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
-    * Gets the value of the ejbName property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link com.sun.java.xml.ns.javaee.String }
-    *     
+    *
+    * @return Returns the name of the EJB
+    *
     */
    String getEjbName();
 
    /**
-    * Sets the value of the ejbName property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link com.sun.java.xml.ns.javaee.String }
-    *     
+    * Sets the name of the EJB
+    *
+    * @param ejbName Name of the EJB
+    *
     */
-   void setEjbName(String value);
+   void setEjbName(String ejbName);
 
    /**
-    * Gets the value of the interceptorClass property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the interceptorClass property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getInterceptorClass().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link FullyQualifiedClassType }
-    * 
-    * 
+    * @return Returns a list of fully qualified names of the interceptor classes
+    *
+    *
     */
-   List<String> getInterceptorClass();
+   List<String> getInterceptorClasses();
 
    /**
+    * Sets the list of fully qualified names of the interceptor classes
+    *
+    * @param interceptorClasses List of fully qualified names of the interceptor classes
+    */
+   void setInterceptorClasses(List<String> interceptorClasses);
+
+   /**
     * Gets the value of the interceptorOrder property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link InterceptorOrderMetaData }
-    *     
+    *
+    * @return Returns a list of fully qualified names of the intereceptor classes
+    * ordered through the interceptor-order element. If there is no interceptor-order
+    * configured, then this returns the same the list as {@link #getInterceptorClasses()}
     */
-   InterceptorOrderMetaData getInterceptorOrder();
+   List<String> getOrderedInterceptorClasses();
 
    /**
-    * Sets the value of the interceptorOrder property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link InterceptorOrderMetaData }
-    *     
+    *
+    * @param orderedInterceptors List of ordered interceptor classes
     */
-   void setInterceptorOrder(InterceptorOrderMetaData value);
+   void setOrderedInterceptorClasses(List<String> orderedInterceptors);
 
    /**
-    * Gets the value of the excludeDefaultInterceptors property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link TrueFalseType }
-    *     
+    *
+    * @return Returns true if the default interceptors are not to be applied to
+    * the bean-class and/or business method. Else returns false.
+    *
     */
-   boolean getExcludeDefaultInterceptors();
+   boolean isExcludeDefaultInterceptors();
 
    /**
-    * Sets the value of the excludeDefaultInterceptors property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link TrueFalseType }
-    *     
+    *
+    * @param excludeDefaultInterceptors Set to true if the default interceptors
+    * are not to be applied to the bean-class and/or business method.
+    *
     */
    void setExcludeDefaultInterceptors(boolean value);
 
    /**
-    * Gets the value of the excludeClassInterceptors property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link TrueFalseType }
-    *     
+    *
+    * @return Returns true if the class interceptors are not to be applied to
+    * the business method. Else returns false.
     */
-   boolean getExcludeClassInterceptors();
+   boolean isExcludeClassInterceptors();
 
    /**
-    * Sets the value of the excludeClassInterceptors property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link TrueFalseType }
-    *     
+    *
+    *
+    * @param excludeClassInterceptors Set to true if the class interceptors are not to be applied to
+    * the business method.
     */
-   void setExcludeClassInterceptors(boolean value);
+   void setExcludeClassInterceptors(boolean excludeClassInterceptors);
 
    /**
-    * Gets the value of the method property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link NamedMethodMetaData }
-    *     
+    *
+    * @return Returns the methods associated with this interceptor binding
+    *
     */
    NamedMethodMetaData getMethod();
 
    /**
-    * Sets the value of the method property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link NamedMethodMetaData }
-    *     
+    * Sets the methods associated with this interceptor binding
+    *
     */
    void setMethod(NamedMethodMetaData value);
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,11 +10,11 @@
 import java.util.List;
 
 /**
- * 
- * 
+ *
+ *
  *         The interceptorType element declares information about a single
  *         interceptor class.  It consists of :
- * 
+ *
  *             - An optional description.
  *             - The fully-qualified name of the interceptor class.
  *             - An optional list of around invoke methods declared on the
@@ -25,13 +25,13 @@
  *               interceptor class and/or its super-classes.
  *             - An optional list of pre-passivate methods declared on the
  *               interceptor class and/or its super-classes.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for interceptorType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="interceptorType">
  *   &lt;complexContent>
@@ -49,410 +49,392 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface InterceptorMetaData
+public interface InterceptorMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
     * Gets the value of the interceptorClass property.
-    * 
+    *
     * @return
     *     possible object is
     *     {@link FullyQualifiedClassType }
-    *     
+    *
     */
    String getInterceptorClass();
 
    /**
     * Sets the value of the interceptorClass property.
-    * 
+    *
     * @param value
     *     allowed object is
     *     {@link FullyQualifiedClassType }
-    *     
+    *
     */
    void setInterceptorClass(String value);
 
    /**
     * Gets the value of the aroundInvoke property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the aroundInvoke property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getAroundInvoke().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link AroundInvokeMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<AroundInvokeMetaData> getAroundInvoke();
 
    /**
     * Gets the value of the envEntry property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the envEntry property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getEnvEntry().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link EnvEntryMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<EnvEntryMetaData> getEnvEntry();
 
    /**
     * Gets the value of the ejbRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the ejbRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getEjbRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link EjbRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<EjbRefMetaData> getEjbRef();
 
    /**
     * Gets the value of the ejbLocalRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the ejbLocalRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getEjbLocalRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link EjbLocalRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<EjbLocalRefMetaData> getEjbLocalRef();
 
    /**
     * Gets the value of the serviceRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the serviceRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getServiceRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ServiceRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<ServiceRefMetaData> getServiceRef();
 
    /**
     * Gets the value of the resourceRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the resourceRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getResourceRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ResourceRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<ResourceRefMetaData> getResourceRef();
 
    /**
     * Gets the value of the resourceEnvRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the resourceEnvRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getResourceEnvRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link ResourceEnvRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<ResourceEnvRefMetaData> getResourceEnvRef();
 
    /**
     * Gets the value of the messageDestinationRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the messageDestinationRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getMessageDestinationRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link MessageDestinationRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<MessageDestinationRefMetaData> getMessageDestinationRef();
 
    /**
     * Gets the value of the persistenceContextRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the persistenceContextRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPersistenceContextRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link PersistenceContextRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<PersistenceContextRefMetaData> getPersistenceContextRef();
 
    /**
     * Gets the value of the persistenceUnitRef property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the persistenceUnitRef property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPersistenceUnitRef().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link PersistenceUnitRefMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<PersistenceUnitRefMetaData> getPersistenceUnitRef();
 
    /**
     * Gets the value of the postConstruct property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the postConstruct property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPostConstruct().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link LifecycleCallbackMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<LifecycleCallbackMetaData> getPostConstruct();
 
    /**
     * Gets the value of the preDestroy property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the preDestroy property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPreDestroy().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link LifecycleCallbackMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<LifecycleCallbackMetaData> getPreDestroy();
 
    /**
     * Gets the value of the postActivate property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the postActivate property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPostActivate().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link LifecycleCallbackMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<LifecycleCallbackMetaData> getPostActivate();
 
    /**
     * Gets the value of the prePassivate property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the prePassivate property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getPrePassivate().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link LifecycleCallbackMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<LifecycleCallbackMetaData> getPrePassivate();
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
 
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
 
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorOrderMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorOrderMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorOrderMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,15 +10,15 @@
 import java.util.List;
 
 /**
- * 
+ *
  *         The interceptor-orderType element describes a total ordering
  *         of interceptor classes.
- *       
- * 
+ *
+ *
  * <p>Java class for interceptor-orderType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="interceptor-orderType">
  *   &lt;complexContent>
@@ -31,54 +31,34 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
 public interface InterceptorOrderMetaData
 {
 
    /**
     * Gets the value of the interceptorClass property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the interceptorClass property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getInterceptorClass().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link FullyQualifiedClassType }
-    * 
-    * 
+    *
+    *
     */
    List<String> getInterceptorClass();
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorsMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorsMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/InterceptorsMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,21 +10,21 @@
 import java.util.List;
 
 /**
- * 
- * 
+ *
+ *
  *         The interceptorsType element declares one or more interceptor
  *         classes used by components within this ejb-jar.  The declaration
  *         consists of :
- * 
+ *
  *             - An optional description.
  *             - One or more interceptor elements.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for interceptorsType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="interceptorsType">
  *   &lt;complexContent>
@@ -38,78 +38,53 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface InterceptorsMetaData
+public interface InterceptorsMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
-    * Gets the value of the interceptor property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the interceptor property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getInterceptor().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link InterceptorMetaData }
-    * 
-    * 
+    * @return Returns a list of interceptors declared in the
+    * EJB deployment
+    *
+    * It's upto the implementation to return either a modifiable
+    * or an unmodifiable list.
+    *
     */
-   List<InterceptorMetaData> getInterceptor();
+   List<InterceptorMetaData> getInterceptors();
 
    /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
+    * Sets the interceptors for EJB deployment
+    *
+    * @param interceptors
     */
-   java.lang.String getId();
+   void setInterceptors(List<InterceptorMetaData> interceptors);
 
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
 
+
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MessageDrivenBeanMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MessageDrivenBeanMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MessageDrivenBeanMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -91,128 +91,11 @@
  *
  *
  */
-public interface MessageDrivenBeanMetaData extends IdMetaData
+public interface MessageDrivenBeanMetaData extends EnterpriseBeanMetaData, IdMetaData
 {
 
    /**
-    * Gets the value of the description property.
     *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the description property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getDescription().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link DescriptionMetaData }
-    *
-    *
-    */
-   List<DescriptionMetaData> getDescription();
-
-   /**
-    * Gets the value of the displayName property.
-    *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the displayName property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getDisplayName().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link DisplayNameMetaData }
-    *
-    *
-    */
-   List<DisplayNameMetaData> getDisplayName();
-
-   /**
-    * Gets the value of the icon property.
-    *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the icon property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getIcon().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link IconType }
-    *
-    *
-    */
-   List<IconType> getIcon();
-
-   /**
-    *
-    * @return Returns the name of this message driven bean
-    *
-    */
-   String getEjbName();
-
-   /**
-    * Sets the name of this message driven bean
-    *
-    * @param ejbName The name of the bean
-    *
-    */
-   void setEjbName(String value);
-
-   /**
-    *
-    * @return Returns the mapped-name of this message driven bean
-    *
-    */
-   String getMappedName();
-
-   /**
-    * Sets the mapped-name of this message driven bean
-    *
-    * @param mappedName Mapped name of the bean
-    *
-    */
-   void setMappedName(String mappedName);
-
-   /**
-    *
-    * @return Returns the fully qualified classname of this message driven bean
-    *
-    */
-   String getEjbClass();
-
-   /**
-    * Sets the fully qualified classname of the message driven bean
-    *
-    * @param ejbClassname Fully qualified classname of the message driven bean
-    *
-    */
-   void setEjbClass(String ejbClassname);
-
-   /**
-    *
     * @return Returns the fully qualified classname of the message
     * listener interface of this message-driven bean.
     *
@@ -333,113 +216,6 @@
    void setAroundInvokes(List<AroundInvokeMetaData> aroundInvokes);
 
    /**
-    * Returns a list of env-entry metadata of this bean.
-    *
-    * Returns an empty list if there is no env-entry.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    *
-    */
-   List<EnvEntryMetaData> getEnvEntries();
-
-   /**
-    * Sets the list of env-entry metadata of this bean
-    *
-    * @param envEntries The list of env-entry of this bean
-    */
-   void setEnvEntries(List<EnvEntryMetaData> envEntries);
-
-   /**
-    * Returns the list of EJB references of this bean
-    * Returns an empty list if there is no EJB reference for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    *
-    */
-   List<EjbRefMetaData> getEjbRefs();
-
-   /**
-    * Sets the list of EJB references for this bean
-    *
-    * @param ejbRefs The list of EJB references
-    */
-   void setEjbRefs(List<EjbRefMetaData> ejbRefs);
-
-   /**
-    * Returns the list of EJB local references of this bean
-    * Returns an empty list if there is no EJB local reference for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    */
-   List<EjbLocalRefMetaData> getEjbLocalRefs();
-
-   /**
-    * Sets the list of EJB local references for this bean
-    *
-    * @param ejbLocalRefs The list of EJB local references
-    */
-   void setEjbLocalRefs(List<EjbLocalRefMetaData> ejbLocalRefs);
-
-   /**
-    * Returns the list of web service reference(s) of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    */
-   List<ServiceRefMetaData> getServiceRefs();
-
-   /**
-    * Sets the list of web service references for this bean
-    *
-    * @param serviceRefs The service references
-    */
-   void setServiceRefs(List<ServiceRefMetaData> serviceRefs);
-
-   /**
-    * @return Returns the list of resource references of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<ResourceRefMetaData> getResourceRefs();
-
-   /**
-    * Sets the resource references of this bean
-    *
-    * @param resourceRefs List of resource references of this bean
-    */
-   void setResourceRefs(List<ResourceRefMetaData> resourceRefs);
-
-   /**
-    * @return Returns the list of resource environment references of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<ResourceEnvRefMetaData> getResourceEnvRefs();
-
-   /**
-    * Sets the resource env references of this bean
-    *
-    * @param resourceEnvRefs
-    */
-   void setResourceEnvRefs(List<ResourceEnvRefMetaData> resourceEnvRefs);
-
-   /**
     * Gets the value of the messageDestinationRef property.
     *
     * <p>
@@ -463,89 +239,5 @@
     */
    // TODO: We need this. Revisit this
    //List<MessageDestinationRefType> getMessageDestinationRef();
-   /**
-    * @return Returns the list of persistence context references of this bean
-    *
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<PersistenceContextRefMetaData> getPersistenceContextRefs();
 
-   /**
-    * Sets the list of persistence context references of this bean
-    *
-    * @param persistenceContextRefs The persistence context references
-    */
-   void setPeristenceContextRefs(List<PersistenceContextRefMetaData> persistenceContextRefs);
-
-   /**
-    * @returns Returns the persistence unit references associated with this bean
-    *
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<PersistenceUnitRefMetaData> getPersistenceUnitRefs();
-
-   /**
-    * Sets the persistence unit references
-    *
-    * @param persistenceUnitRefs The persistence unit references of this bean
-    */
-   void setPersistenceUnitRefs(List<PersistenceUnitRefMetaData> persistenceUnitRefs);
-
-   /**
-    * @return Returns a list of post-construct methods associated with this bean
-    * Returns an empty list if there are no post-constructs.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<LifecycleCallbackMetaData> getPostConstructs();
-
-   /**
-    * Sets the post-constructs associated with this bean
-    *
-    * @param postConstructs The list of post-constructs
-    */
-   void setPostConstructs(List<LifecycleCallbackMetaData> postConstructs);
-
-   /**
-    * @return Returns a list of pre-destroy methods associated with this bean
-    * Returns an empty list if there are no pre-destroy callbacks for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<LifecycleCallbackMetaData> getPreDestroys();
-
-   /**
-    * Sets the list of pre-destroy callbacks associated with this bean
-    *
-    * @param preDestroys The list of pre-destroys for this bean
-    */
-   void setPreDestroys(List<LifecycleCallbackMetaData> preDestroys);
-
-   /**
-    * @return Returns the security identity associated with this bean
-    *
-    */
-   SecurityIdentityMetaData getSecurityIdentity();
-
-   /**
-    * Sets the security identity associated with this bean
-    *
-    * @param securityIdentity The security identity associated with this bean
-    *
-    */
-   void setSecurityIdentity(SecurityIdentityMetaData securityIdentity);
-
 }

Deleted: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,344 +0,0 @@
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
-//
-
-package org.jboss.ejb3.metadata.spi.javaee;
-
-import java.util.List;
-
-/**
- * 
- * 	
- * 
- * 	  The methodType is used to denote a method of an enterprise
- * 	  bean's business, home, component, and/or web service endpoint
- * 	  interface, or, in the case of a message-driven bean, the
- * 	  bean's message listener method, or a set of such
- * 	  methods. The ejb-name element must be the name of one of the
- * 	  enterprise beans declared in the deployment descriptor; the
- * 	  optional method-intf element allows to distinguish between a
- * 	  method with the same signature that is multiply defined
- * 	  across the business, home, component, and/or web service
- *           endpoint nterfaces; the method-name element specifies the
- *           method name; and the optional method-params elements identify
- *           a single method among multiple methods with an overloaded
- * 	  method name.
- * 
- * 	  There are three possible styles of using methodType element
- * 	  within a method element:
- * 
- * 	  1.
- * 	  <method>
- * 	      <ejb-name>EJBNAME</ejb-name>
- * 	      <method-name>*</method-name>
- * 	  </method>
- * 
- * 	     This style is used to refer to all the methods of the
- * 	     specified enterprise bean's business, home, component,
- *              and/or web service endpoint interfaces.
- * 
- * 	  2.
- * 	  <method>
- * 	      <ejb-name>EJBNAME</ejb-name>
- * 	      <method-name>METHOD</method-name>
- * 	  </method>
- * 
- * 	     This style is used to refer to the specified method of
- * 	     the specified enterprise bean. If there are multiple
- * 	     methods with the same overloaded name, the element of
- * 	     this style refers to all the methods with the overloaded
- * 	     name.
- * 
- * 	  3.
- * 	  <method>
- * 	      <ejb-name>EJBNAME</ejb-name>
- * 	      <method-name>METHOD</method-name>
- * 	      <method-params>
- * 		  <method-param>PARAM-1</method-param>
- * 		  <method-param>PARAM-2</method-param>
- * 		  ...
- * 		  <method-param>PARAM-n</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	     This style is used to refer to a single method within a
- * 	     set of methods with an overloaded name. PARAM-1 through
- * 	     PARAM-n are the fully-qualified Java types of the
- * 	     method's input parameters (if the method has no input
- * 	     arguments, the method-params element contains no
- * 	     method-param elements). Arrays are specified by the
- * 	     array element's type, followed by one or more pair of
- * 	     square brackets (e.g. int[][]). If there are multiple
- * 	     methods with the same overloaded name, this style refers
- * 	     to all of the overloaded methods.
- * 
- * 	  Examples:
- * 
- * 	  Style 1: The following method element refers to all the
- * 	  methods of the EmployeeService bean's business, home,
- *           component, and/or web service endpoint interfaces:
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-name>*</method-name>
- * 	  </method>
- * 
- * 	  Style 2: The following method element refers to all the
- * 	  create methods of the EmployeeService bean's home
- * 	  interface(s).
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-name>create</method-name>
- * 	  </method>
- * 
- * 	  Style 3: The following method element refers to the
- * 	  create(String firstName, String LastName) method of the
- * 	  EmployeeService bean's home interface(s).
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-name>create</method-name>
- * 	      <method-params>
- * 		  <method-param>java.lang.String</method-param>
- * 		  <method-param>java.lang.String</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	  The following example illustrates a Style 3 element with
- * 	  more complex parameter types. The method
- * 	  foobar(char s, int i, int[] iar, mypackage.MyClass mycl,
- * 	  mypackage.MyClass[][] myclaar) would be specified as:
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-name>foobar</method-name>
- * 	      <method-params>
- * 		  <method-param>char</method-param>
- * 		  <method-param>int</method-param>
- * 		  <method-param>int[]</method-param>
- * 		  <method-param>mypackage.MyClass</method-param>
- * 		  <method-param>mypackage.MyClass[][]</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	  The optional method-intf element can be used when it becomes
- * 	  necessary to differentiate between a method that is multiply
- * 	  defined across the enterprise bean's business, home, component,
- *           and/or web service endpoint interfaces with the same name and
- * 	  signature. However, if the same method is a method of both the
- *           local business interface, and the local component interface,
- *           the same attribute applies to the method for both interfaces.
- *           Likewise, if the same method is a method of both the remote
- *           business interface and the remote component interface, the same
- *           attribute applies to the method for both interfaces.
- * 
- * 	  For example, the method element
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-intf>Remote</method-intf>
- * 	      <method-name>create</method-name>
- * 	      <method-params>
- * 		  <method-param>java.lang.String</method-param>
- * 		  <method-param>java.lang.String</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	  can be used to differentiate the create(String, String)
- * 	  method defined in the remote interface from the
- * 	  create(String, String) method defined in the remote home
- * 	  interface, which would be defined as
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-intf>Home</method-intf>
- * 	      <method-name>create</method-name>
- * 	      <method-params>
- * 		  <method-param>java.lang.String</method-param>
- * 		  <method-param>java.lang.String</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	  and the create method that is defined in the local home
- * 	  interface which would be defined as
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-intf>LocalHome</method-intf>
- * 	      <method-name>create</method-name>
- * 	      <method-params>
- * 		  <method-param>java.lang.String</method-param>
- * 		  <method-param>java.lang.String</method-param>
- * 	      </method-params>
- * 	  </method>
- * 
- * 	  The method-intf element can be used with all three Styles
- * 	  of the method element usage. For example, the following
- * 	  method element example could be used to refer to all the
- * 	  methods of the EmployeeService bean's remote home interface
- *           and the remote business interface.
- * 
- * 	  <method>
- * 	      <ejb-name>EmployeeService</ejb-name>
- * 	      <method-intf>Home</method-intf>
- * 	      <method-name>*</method-name>
- * 	  </method>
- * 
- * 	  
- *       
- * 
- * <p>Java class for methodType complex type.
- * 
- * <p>The following schema fragment specifies the expected content contained within this class.
- * 
- * <pre>
- * &lt;complexType name="methodType">
- *   &lt;complexContent>
- *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       &lt;sequence>
- *         &lt;element name="description" type="{http://java.sun.com/xml/ns/javaee}descriptionType" maxOccurs="unbounded" minOccurs="0"/>
- *         &lt;element name="ejb-name" type="{http://java.sun.com/xml/ns/javaee}ejb-nameType"/>
- *         &lt;element name="method-intf" type="{http://java.sun.com/xml/ns/javaee}method-intfType" minOccurs="0"/>
- *         &lt;element name="method-name" type="{http://java.sun.com/xml/ns/javaee}method-nameType"/>
- *         &lt;element name="method-params" type="{http://java.sun.com/xml/ns/javaee}method-paramsType" minOccurs="0"/>
- *       &lt;/sequence>
- *       &lt;attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- *     &lt;/restriction>
- *   &lt;/complexContent>
- * &lt;/complexType>
- * </pre>
- * 
- * 
- */
-public interface MethodMetaData
-{
-
-   /**
-    * Gets the value of the description property.
-    * 
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getDescription().add(newItem);
-    * </pre>
-    * 
-    * 
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link DescriptionMetaData }
-    * 
-    * 
-    */
-   List<DescriptionMetaData> getDescription();
-
-   /**
-    * Gets the value of the ejbName property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link EjbNameType }
-    *     
-    */
-   String getEjbName();
-
-   /**
-    * Sets the value of the ejbName property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link EjbNameType }
-    *     
-    */
-   void setEjbName(String value);
-
-   /**
-    * Gets the value of the methodIntf property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link MethodIntfType }
-    *     
-    */
-   String getMethodIntf();
-
-   /**
-    * Sets the value of the methodIntf property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link MethodIntfType }
-    *     
-    */
-   void setMethodIntf(String value);
-
-   /**
-    * Gets the value of the methodName property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link MethodNameType }
-    *     
-    */
-   String getMethodName();
-
-   /**
-    * Sets the value of the methodName property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link MethodNameType }
-    *     
-    */
-   void setMethodName(String value);
-
-   /**
-    * Gets the value of the methodParams property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link MethodParamsMetaData }
-    *     
-    */
-   MethodParamsMetaData getMethodParams();
-
-   /**
-    * Sets the value of the methodParams property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link MethodParamsMetaData }
-    *     
-    */
-   void setMethodParams(MethodParamsMetaData value);
-
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
-}

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodPermissionMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodPermissionMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/MethodPermissionMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -51,7 +51,7 @@
  *
  *
  */
-public interface MethodPermissionMetaData
+public interface MethodPermissionMetaData extends IdMetaData
 {
 
    /**
@@ -79,91 +79,51 @@
    List<DescriptionMetaData> getDescription();
 
    /**
-    * Gets the value of the roleName property.
+    * @return Returns a list of role names which are allowed
+    * to access the method
     *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the roleName property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getRoleName().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link RoleNameType }
-    *
-    *
     */
-   List<String> getRoleName();
+   List<String> getRoleNames();
 
    /**
-    * Gets the value of the unchecked property.
+    * Sets the role names which are allowed to access the method
     *
-    * @return
-    *     possible object is
-    *     {@link EmptyType }
-    *
+    * @param roleNames List of role names
     */
-   boolean isUnchecked();
+   void setRoleNames(List<String> roleNames);
 
    /**
-    * Sets the value of the unchecked property.
+    * @return Returns true if the method is not checked for authorization
+    * by the container prior to the method invocation. Else returns false.
     *
-    * @param value
-    *     allowed object is
-    *     {@link EmptyType }
-    *
     */
-   void setUnchecked(boolean value);
+   boolean isUnchecked();
 
    /**
-    * Gets the value of the method property.
+    * Sets the value of unchecked attribute
     *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the method property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getMethod().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link MethodMetaData }
-    *
-    *
+    * @param unchecked True if the method should not be checked for authorization.
+    * False otherwise
     */
-   List<MethodMetaData> getMethod();
+   void setUnchecked(boolean unchecked);
 
    /**
-    * Gets the value of the id property.
+    * @return Returns a list of methods which are configured for method permissions
     *
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
+    * Returns an empty list if no methods have been configured for method permissions
     *
+    *
     */
-   java.lang.String getId();
+   List<EjbMethodMetaData> getMethods();
 
    /**
-    * Sets the value of the id property.
+    * Sets the method permissions for the <code>methods</code>
     *
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
+    * @param methods The methods for which the method permissions are to be
+    * configured
     *
     */
-   void setId(java.lang.String value);
+   void setMethods(List<EjbMethodMetaData> methods);
 
+
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/RelationshipsMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/RelationshipsMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/RelationshipsMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,20 +10,20 @@
 import java.util.List;
 
 /**
- * 
- * 
+ *
+ *
  * 	The relationshipsType describes the relationships in
  * 	which entity beans with container-managed persistence
  * 	participate. The relationshipsType contains an optional
  * 	description; and a list of ejb-relation elements, which
  * 	specify the container managed relationships.
- * 
- *       
- * 
+ *
+ *
+ *
  * <p>Java class for relationshipsType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="relationshipsType">
  *   &lt;complexContent>
@@ -37,78 +37,59 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface RelationshipsMetaData
+public interface RelationshipsMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
     * Gets the value of the ejbRelation property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the ejbRelation property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getEjbRelation().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link EjbRelationMetaData }
-    * 
-    * 
+    *
+    *
     */
-   List<EjbRelationMetaData> getEjbRelation();
+   List<EjbRelationMetaData> getEjbRelations();
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
 
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SecurityRoleMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SecurityRoleMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SecurityRoleMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -1,8 +1,8 @@
 //
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6 
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
-// Any modifications to this file will be lost upon recompilation of the source schema. 
-// Generated on: 2009.06.08 at 07:12:16 PM IST 
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vJAXB 2.1.3 in JDK 1.6
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2009.06.08 at 07:12:16 PM IST
 //
 
 package org.jboss.ejb3.metadata.spi.javaee;
@@ -10,15 +10,15 @@
 import java.util.List;
 
 /**
- * 
- * 	
- * 
+ *
+ *
+ *
  * 	  The security-roleType contains the definition of a security
  * 	  role. The definition consists of an optional description of
  * 	  the security role, and the security role name.
- * 
+ *
  * 	  Example:
- * 
+ *
  * 	      <security-role>
  * 	      <description>
  * 		  This role includes all employees who are authorized
@@ -26,14 +26,14 @@
  * 	      </description>
  * 	      <role-name>employee</role-name>
  * 	      </security-role>
- * 
- * 	  
- *       
- * 
+ *
+ *
+ *
+ *
  * <p>Java class for security-roleType complex type.
- * 
+ *
  * <p>The following schema fragment specifies the expected content contained within this class.
- * 
+ *
  * <pre>
  * &lt;complexType name="security-roleType">
  *   &lt;complexContent>
@@ -47,74 +47,49 @@
  *   &lt;/complexContent>
  * &lt;/complexType>
  * </pre>
- * 
- * 
+ *
+ *
  */
-public interface SecurityRoleMetaData
+public interface SecurityRoleMetaData extends IdMetaData
 {
 
    /**
     * Gets the value of the description property.
-    * 
+    *
     * <p>
     * This accessor method returns a reference to the live list,
     * not a snapshot. Therefore any modification you make to the
     * returned list will be present inside the JAXB object.
     * This is why there is not a <CODE>set</CODE> method for the description property.
-    * 
+    *
     * <p>
     * For example, to add a new item, do as follows:
     * <pre>
     *    getDescription().add(newItem);
     * </pre>
-    * 
-    * 
+    *
+    *
     * <p>
     * Objects of the following type(s) are allowed in the list
     * {@link DescriptionMetaData }
-    * 
-    * 
+    *
+    *
     */
    List<DescriptionMetaData> getDescription();
 
    /**
-    * Gets the value of the roleName property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link RoleNameType }
-    *     
+    *
+    * @return Returns the role name
+    *
     */
    String getRoleName();
 
    /**
-    * Sets the value of the roleName property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link RoleNameType }
-    *     
+    * Sets the role name
+    *
+    * @param roleName Role name
+    *
     */
-   void setRoleName(String value);
+   void setRoleName(String roleName);
 
-   /**
-    * Gets the value of the id property.
-    * 
-    * @return
-    *     possible object is
-    *     {@link java.lang.String }
-    *     
-    */
-   java.lang.String getId();
-
-   /**
-    * Sets the value of the id property.
-    * 
-    * @param value
-    *     allowed object is
-    *     {@link java.lang.String }
-    *     
-    */
-   void setId(java.lang.String value);
-
 }

Modified: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SessionBeanMetaData.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SessionBeanMetaData.java	2009-08-01 17:26:40 UTC (rev 91911)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/SessionBeanMetaData.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -129,109 +129,10 @@
  *
  *
  */
-public interface SessionBeanMetaData extends IdMetaData
+public interface SessionBeanMetaData extends EnterpriseBeanMetaData, IdMetaData
 {
 
    /**
-    * Gets the value of the description property.
-    *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the description property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getDescription().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link DescriptionMetaData }
-    *
-    *
-    */
-   List<DescriptionMetaData> getDescription();
-
-   /**
-    * Gets the value of the displayName property.
-    *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the displayName property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getDisplayName().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link DisplayNameMetaData }
-    *
-    *
-    */
-   List<DisplayNameMetaData> getDisplayName();
-
-   /**
-    * Gets the value of the icon property.
-    *
-    * <p>
-    * This accessor method returns a reference to the live list,
-    * not a snapshot. Therefore any modification you make to the
-    * returned list will be present inside the JAXB object.
-    * This is why there is not a <CODE>set</CODE> method for the icon property.
-    *
-    * <p>
-    * For example, to add a new item, do as follows:
-    * <pre>
-    *    getIcon().add(newItem);
-    * </pre>
-    *
-    *
-    * <p>
-    * Objects of the following type(s) are allowed in the list
-    * {@link IconType }
-    *
-    *
-    */
-   List<IconType> getIcon();
-
-   /**
-    * Returns the ejb name
-    *
-    */
-   String getEjbName();
-
-   /**
-    * Sets the ejb name
-    *
-    * @param name EJB name
-    */
-   void setEjbName(String name);
-
-   /**
-    * Returns the mapped-name of the bean.
-    * Returns null if there is no mapped-name for
-    * this bean
-    *
-    */
-   String getMappedName();
-
-   /**
-    * Sets the mapped-name of the bean
-    * @param mappedName The mapped-name of the bean
-    */
-   void setMappedName(String mappedName);
-
-   /**
     * Returns the classname of the home interface corresponding to this
     * bean. Returns null if there is no home interface
     *
@@ -376,22 +277,8 @@
     */
    boolean isStateful();
 
-   /**
-    * Returns the fully qualified classname of the bean implementation
-    * class.
-    *
-    */
-   String getEjbClass();
 
    /**
-    * Sets the fully qualified classname of the bean implementation class.
-    *
-    * @param beanClass Fully qualified classname of the bean implementation
-    *
-    */
-   void setEjbClass(String beanClass);
-
-   /**
     * TODO: Revisit this - do we need this
     */
    String getSessionType();
@@ -511,114 +398,9 @@
     */
    void setAroundInvokes(List<AroundInvokeMetaData> aroundInvokes);
 
-   /**
-    * Returns a list of env-entry metadata of this bean.
-    *
-    * Returns an empty list if there is no env-entry.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    *
-    */
-   List<EnvEntryMetaData> getEnvEntries();
 
-   /**
-    * Sets the list of env-entry metadata of this bean
-    *
-    * @param envEntries The list of env-entry of this bean
-    */
-   void setEnvEntries(List<EnvEntryMetaData> envEntries);
 
    /**
-    * Returns the list of EJB references of this bean
-    * Returns an empty list if there is no EJB reference for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    *
-    */
-   List<EjbRefMetaData> getEjbRefs();
-
-   /**
-    * Sets the list of EJB references for this bean
-    *
-    * @param ejbRefs The list of EJB references
-    */
-   void setEjbRefs(List<EjbRefMetaData> ejbRefs);
-
-   /**
-    * Returns the list of EJB local references of this bean
-    * Returns an empty list if there is no EJB local reference for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    */
-   List<EjbLocalRefMetaData> getEjbLocalRefs();
-
-   /**
-    * Sets the list of EJB local references for this bean
-    *
-    * @param ejbLocalRefs The list of EJB local references
-    */
-   void setEjbLocalRefs(List<EjbLocalRefMetaData> ejbLocalRefs);
-
-   /**
-    * Returns the list of web service reference(s) of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list.
-    *
-    */
-   List<ServiceRefMetaData> getServiceRefs();
-
-   /**
-    * Sets the list of web service references for this bean
-    *
-    * @param serviceRefs The service references
-    */
-   void setServiceRefs(List<ServiceRefMetaData> serviceRefs);
-
-   /**
-    * @return Returns the list of resource references of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<ResourceRefMetaData> getResourceRefs();
-
-   /**
-    * Sets the resource references of this bean
-    *
-    * @param resourceRefs List of resource references of this bean
-    */
-   void setResourceRefs(List<ResourceRefMetaData> resourceRefs);
-
-   /**
-    * @return Returns the list of resource environment references of this bean.
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<ResourceEnvRefMetaData> getResourceEnvRefs();
-
-   /**
-    * Sets the resource env references of this bean
-    *
-    * @param resourceEnvRefs
-    */
-   void setResourceEnvRefs(List<ResourceEnvRefMetaData> resourceEnvRefs);
-
-   /**
     * Gets the value of the messageDestinationRef property.
     *
     * <p>
@@ -642,78 +424,11 @@
     */
    // TODO: Revisit, we need this
    //List<MessageDestinationRefType> getMessageDestinationRef();
-   /**
-    * @return Returns the list of persistence context references of this bean
-    *
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<PersistenceContextRefMetaData> getPersistenceContextRefs();
 
-   /**
-    * Sets the list of persistence context references of this bean
-    *
-    * @param persistenceContextRefs The persistence context references
-    */
-   void setPeristenceContextRefs(List<PersistenceContextRefMetaData> persistenceContextRefs);
 
-   /**
-    * @returns Returns the persistence unit references associated with this bean
-    *
-    * Returns an empty list if there are no such references.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<PersistenceUnitRefMetaData> getPersistenceUnitRefs();
 
-   /**
-    * Sets the persistence unit references
-    *
-    * @param persistenceUnitRefs The persistence unit references of this bean
-    */
-   void setPersistenceUnitRefs(List<PersistenceUnitRefMetaData> persistenceUnitRefs);
 
    /**
-    * @return Returns a list of post-construct methods associated with this bean
-    * Returns an empty list if there are no post-constructs.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    */
-   List<LifecycleCallbackMetaData> getPostConstructs();
-
-   /**
-    * Sets the post-constructs associated with this bean
-    *
-    * @param postConstructs The list of post-constructs
-    */
-   void setPostConstructs(List<LifecycleCallbackMetaData> postConstructs);
-
-   /**
-    * @return Returns a list of pre-destroy methods associated with this bean
-    * Returns an empty list if there are no pre-destroy callbacks for this bean.
-    *
-    * It's upto the implementation to return either a modifiable
-    * or an unmodifiable list
-    *
-    *
-    */
-   List<LifecycleCallbackMetaData> getPreDestroys();
-
-   /**
-    * Sets the list of pre-destroy callbacks associated with this bean
-    *
-    * @param preDestroys The list of pre-destroys for this bean
-    */
-   void setPreDestroys(List<LifecycleCallbackMetaData> preDestroys);
-
-   /**
     * @return Returns a list of post-activate methods associated with this bean
     * Returns an empty list if there are no post-activate callbacks for this bean.
     *
@@ -765,18 +480,6 @@
     */
    void setSecurityRoleRefs(List<SecurityRoleRefMetaData> securityRoleRefs);
 
-   /**
-    * @return Returns the security identity associated with this bean
-    *
-    */
-   SecurityIdentityMetaData getSecurityIdentity();
 
-   /**
-    * Sets the security identity associated with this bean
-    *
-    * @param securityIdentity The security identity associated with this bean
-    *
-    */
-   void setSecurityIdentity(SecurityIdentityMetaData securityIdentity);
 
 }

Added: projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/TransactionAttribute.java
===================================================================
--- projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/TransactionAttribute.java	                        (rev 0)
+++ projects/ejb3/trunk/metadata-spi/src/main/java/org/jboss/ejb3/metadata/spi/javaee/TransactionAttribute.java	2009-08-01 19:24:57 UTC (rev 91912)
@@ -0,0 +1,38 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.ejb3.metadata.spi.javaee;
+
+/**
+ * TransactionAttribute
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public enum TransactionAttribute
+{
+   NOT_SUPPORTED,
+   SUPPORTS,
+   REQUIRED,
+   REQUIRES_NEW,
+   MANDATORY,
+   NEVER
+}




More information about the jboss-cvs-commits mailing list