User: starksm 
  Date: 01/05/22 19:42:22

  Modified:    src/main/org/jboss/metadata Tag: Branch_2_2
                        BeanMetaData.java EnvEntryMetaData.java
                        ResourceRefMetaData.java
  Added:       src/main/org/jboss/metadata Tag: Branch_2_2 WebMetaData.java
  Log:
  Update metadata classes for web container support changes
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.15.2.1  +2 -4      jboss/src/main/org/jboss/metadata/BeanMetaData.java
  
  Index: BeanMetaData.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/metadata/BeanMetaData.java,v
  retrieving revision 1.15
  retrieving revision 1.15.2.1
  diff -u -r1.15 -r1.15.2.1
  --- BeanMetaData.java 2001/02/27 16:37:53     1.15
  +++ BeanMetaData.java 2001/05/23 02:42:22     1.15.2.1
  @@ -25,7 +25,7 @@
    *   @see <related>
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Sebastien Alborini</a>
    *   @author Peter Antman ([EMAIL PROTECTED])
  - *   @version $Revision: 1.15 $
  + *   @version $Revision: 1.15.2.1 $
    */
   public abstract class BeanMetaData extends MetaData {
       // Constants -----------------------------------------------------
  @@ -251,14 +251,12 @@
                while (iterator.hasNext()) {
                        Element resourceRef = (Element)iterator.next();
                        String resRefName = 
getElementContent(getUniqueChild(resourceRef, "res-ref-name"));
  -                     String resourceName = 
getElementContent(getUniqueChild(resourceRef, "resource-name"));
                        ResourceRefMetaData resourceRefMetaData = 
(ResourceRefMetaData)resourceReferences.get(resRefName);
               
               if (resourceRefMetaData == null) {
                   throw new DeploymentException("resource-ref " + resRefName + " 
found in jboss.xml but not in ejb-jar.xml");
               }
  -            
  -                 resourceRefMetaData.setResourceName(resourceName);
  +            resourceRefMetaData.importJbossXml(resourceRef);
                }
                
                // set the external ejb-references (optional)
  
  
  
  1.2.2.1   +61 -20    jboss/src/main/org/jboss/metadata/EnvEntryMetaData.java
  
  Index: EnvEntryMetaData.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/metadata/EnvEntryMetaData.java,v
  retrieving revision 1.2
  retrieving revision 1.2.2.1
  diff -u -r1.2 -r1.2.2.1
  --- EnvEntryMetaData.java     2000/12/07 15:45:01     1.2
  +++ EnvEntryMetaData.java     2001/05/23 02:42:22     1.2.2.1
  @@ -6,23 +6,27 @@
    */
   package org.jboss.metadata;
   
  +import javax.naming.Context;
  +import javax.naming.NamingException;
  +
   import org.w3c.dom.Element;
   
   import org.jboss.ejb.DeploymentException;
  +import org.jboss.naming.Util;
   
   /**
    *   <description> 
    *      
    *   @see <related>
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Sebastien Alborini</a>
  - *   @version $Revision: 1.2 $
  + *   @version $Revision: 1.2.2.1 $
    */
   public class EnvEntryMetaData extends MetaData {
       // Constants -----------------------------------------------------
       
       // Attributes ----------------------------------------------------
  -     private String name;
  -     private String type;
  +    private String name;
  +    private String type;
       private String value;
       // Static --------------------------------------------------------
       
  @@ -31,24 +35,61 @@
        }
        
       // Public --------------------------------------------------------
  -     
  -     public String getName() { return name; }
  -     
  -     public String getType() { return type; }
        
  -     public String getValue() { return value; }
  +    public String getName() { return name; }
  +
  +    public String getType() { return type; }
  +
  +    public String getValue() { return value; }
       
       public void importEjbJarXml(Element element) throws DeploymentException {
  -             name = getElementContent(getUniqueChild(element, "env-entry-name"));
  -             type = getElementContent(getUniqueChild(element, "env-entry-type"));
  -             value = getElementContent(getUniqueChild(element, "env-entry-value"));
  -     }               
  -    
  -     // Package protected ---------------------------------------------
  -    
  -    // Protected -----------------------------------------------------
  -    
  -    // Private -------------------------------------------------------
  -    
  -    // Inner classes -------------------------------------------------
  +        name = getElementContent(getUniqueChild(element, "env-entry-name"));
  +        type = getElementContent(getUniqueChild(element, "env-entry-type"));
  +        value = getElementContent(getUniqueChild(element, "env-entry-value"));
  +    }
  +    
  +    public static void bindEnvEntry(Context ctx, EnvEntryMetaData entry)
  +        throws ClassNotFoundException, NamingException
  +    {
  +        ClassLoader loader = EnvEntryMetaData.class.getClassLoader();
  +        Class type = loader.loadClass(entry.getType());
  +        if( type == String.class )
  +        {
  +            Util.bind(ctx, entry.getName(), entry.getValue());
  +        }
  +        else if( type == Integer.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Integer(entry.getValue()));
  +        }
  +        else if( type == Long.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Long(entry.getValue()));
  +        }
  +        else if( type == Double.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Double(entry.getValue()));
  +        }
  +        else if( type == Float.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Float(entry.getValue()));
  +        }
  +        else if( type == Byte.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Byte(entry.getValue()));
  +        }
  +        else if( type == Short.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Short(entry.getValue()));
  +        }
  +        else if( type == Boolean.class )
  +        {
  +            Util.bind(ctx, entry.getName(), new Boolean(entry.getValue()));
  +        }
  +        else
  +        {
  +            // Default to a String type
  +            Util.bind(ctx, entry.getName(), entry.getValue());
  +        }
  +    }
  +
   }
  
  
  
  1.3.2.1   +33 -9     jboss/src/main/org/jboss/metadata/ResourceRefMetaData.java
  
  Index: ResourceRefMetaData.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/metadata/ResourceRefMetaData.java,v
  retrieving revision 1.3
  retrieving revision 1.3.2.1
  diff -u -r1.3 -r1.3.2.1
  --- ResourceRefMetaData.java  2000/12/07 15:45:01     1.3
  +++ ResourceRefMetaData.java  2001/05/23 02:42:22     1.3.2.1
  @@ -15,19 +15,29 @@
    *      
    *   @see <related>
    *   @author <a href="mailto:[EMAIL PROTECTED]";>Sebastien Alborini</a>
  - *   @version $Revision: 1.3 $
  + *   @version $Revision: 1.3.2.1 $
    */
   public class ResourceRefMetaData extends MetaData {
       // Constants -----------------------------------------------------
       
       // Attributes ----------------------------------------------------
  -     private String refName;      // the name used in the bean code (from 
ejb-jar.xml)
  -     private String name;         // the name of the resource used by jboss
  -     // the jndi name will be found in the ApplicationMetaData where resources are 
declared
  -     
  +    /** The ejb-jar.xml/../resource-ref/res-ref-name element used by the bean code 
*/
  +     private String refName;
  +    /** The jboss.xml/../resource-ref/resource-name value that maps to a 
resource-manager */
  +     private String name;
  +    /** The jndi name of the deployed resource, or the URL in the case of
  +     a java.net.URL resource type. This comes from either the:
  +     jboss.xml/../resource-ref/jndi-name element value or the
  +     jboss.xml/../resource-ref/res-url element value or the
  +     jboss.xml/../resource-manager/res-jndi-name element value
  +     jboss.xml/../resource-manager/res-url element value
  +     */
  +     private String jndiName;
  +     /** The ejb-jar.xml/../resource-ref/res-type java classname of the resource */
       private String type;
  +    /** The ejb-jar.xml/../resource-ref/res-auth value */
        private boolean containerAuth;
  -     
  +
       // Static --------------------------------------------------------
       
       // Constructors --------------------------------------------------
  @@ -49,7 +59,7 @@
        public void setResourceName(String resName) {
                name = resName;
        }
  -     
  +    public String getJndiName() { return jndiName; }
        public String getType() { return type; }
   
        public boolean isContainerAuth() { return containerAuth; }
  @@ -71,9 +81,23 @@
        }
        
        public void importJbossXml(Element element) throws DeploymentException {
  -             name = getElementContent(getUniqueChild(element, "resource-name"));
  +        // Look for the resource-ref/resource-name element
  +        Element child = getOptionalChild(element, "resource-name");
  +        if( child == null )
  +        {
  +            // There must be a resource-ref/res-url value if this is a URL resource
  +            if( type.equals("java.net.URL") )
  +                jndiName = getElementContent(getUniqueChild(element, "res-url"));
  +            // There must be a resource-ref/jndi-name value otherwise
  +            else
  +                jndiName = getElementContent(getUniqueChild(element, "jndi-name"));
  +        }
  +        else
  +        {
  +            name = getElementContent(child);
  +        }
        }
  -    
  +
        // Package protected ---------------------------------------------
       
       // Protected -----------------------------------------------------
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.2.2.1   +1 -1      jboss/src/main/org/jboss/metadata/WebMetaData.java
  
  Index: WebMetaData.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/metadata/WebMetaData.java,v
  retrieving revision 1.2
  retrieving revision 1.2.2.1
  diff -u -r1.2 -r1.2.2.1
  --- WebMetaData.java  2001/05/10 03:20:34     1.2
  +++ WebMetaData.java  2001/05/23 02:42:22     1.2.2.1
  @@ -22,7 +22,7 @@
    * @see org.jboss.web.AbstractWebContainer
   
    * @author [EMAIL PROTECTED]
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.2.2.1 $
    */
   public class WebMetaData implements XmlLoadable
   {
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to