[jboss-cvs] JBossAS SVN: r66409 - in projects/metadata/trunk/src: test/java/org/jboss/test/metadata/ejb and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Oct 24 22:09:58 EDT 2007


Author: scott.stark at jboss.org
Date: 2007-10-24 22:09:57 -0400 (Wed, 24 Oct 2007)
New Revision: 66409

Added:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/StubPropertyMetaData.java
Modified:
   projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java
   projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java
   projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml
Log:
Add the JBossPortComponentRef

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java	2007-10-25 02:09:57 UTC (rev 66409)
@@ -0,0 +1,100 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.javaee.jboss;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.namespace.QName;
+
+import org.jboss.metadata.javaee.spec.PortComponentRef;
+
+/**
+   jboss port-component-ref-type
+
+   <xsd:complexType name="port-component-ref-type">
+      <xsd:sequence>
+         <xsd:element name="service-endpoint-interface" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+         <xsd:element name="port-qname" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+         <xsd:element name="config-name" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+         <xsd:element name="config-file" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+         <xsd:element name="stub-property" type="jboss:stub-property-type" minOccurs="0" maxOccurs="unbounded"/>
+      </xsd:sequence>
+   </xsd:complexType>
+
+   <xsd:complexType name="stub-property-type">
+      <xsd:sequence>
+         <xsd:element name="prop-name" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+         <xsd:element name="prop-value" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+      </xsd:sequence>
+   </xsd:complexType>
+
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+ at XmlType(name="port-component-refType")
+public class JBossPortComponentRef extends PortComponentRef
+{
+   private static final long serialVersionUID = 1;
+
+   private QName portQname;
+   private String configName;
+   private String configFile;
+   private List<StubPropertyMetaData> stubProperties;
+
+   public String getConfigFile()
+   {
+      return configFile;
+   }
+   public void setConfigFile(String configFile)
+   {
+      this.configFile = configFile;
+   }
+   public String getConfigName()
+   {
+      return configName;
+   }
+   public void setConfigName(String configName)
+   {
+      this.configName = configName;
+   }
+   public QName getPortQname()
+   {
+      return portQname;
+   }
+   public void setPortQname(QName portQname)
+   {
+      this.portQname = portQname;
+   }
+   public List<StubPropertyMetaData> getStubProperties()
+   {
+      return stubProperties;
+   }
+   @XmlElement(name="stub-property")
+   public void setStubProperties(List<StubPropertyMetaData> stubProperties)
+   {
+      this.stubProperties = stubProperties;
+   }
+
+   
+}


Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossPortComponentRef.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java	2007-10-25 01:25:23 UTC (rev 66408)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/JBossServiceReferenceMetaData.java	2007-10-25 02:09:57 UTC (rev 66409)
@@ -59,6 +59,8 @@
 
    /** The handler-chain */
    private String handlerChain;
+   
+   private JBossPortComponentRef portComponentRef;
 
    /** The wsdl file override */
    private String wsdlOverride;
@@ -71,14 +73,6 @@
       // For serialization
    }
 
-   public JBossServiceReferenceMetaData merge(JBossServiceReferenceMetaData original)
-   {
-      JBossServiceReferenceMetaData merged = new JBossServiceReferenceMetaData();
-      merged.merge(this, original);
-      return merged;
-   }
-
-
    /**
     * Get the serviceRefName.
     * 
@@ -141,6 +135,17 @@
       this.serviceClass = serviceClass;
    }
 
+   
+   public JBossPortComponentRef getPortComponentRef()
+   {
+      return portComponentRef;
+   }
+
+   public void setPortComponentRef(JBossPortComponentRef portComponentRef)
+   {
+      this.portComponentRef = portComponentRef;
+   }
+
    public String getWsdlOverride()
    {
       return wsdlOverride;
@@ -151,6 +156,12 @@
       this.wsdlOverride = wsdlOverride;
    }
 
+   public JBossServiceReferenceMetaData merge(JBossServiceReferenceMetaData original)
+   {
+      JBossServiceReferenceMetaData merged = new JBossServiceReferenceMetaData();
+      merged.merge(this, original);
+      return merged;
+   }
    /**
     * Merge the contents of override with original into this.
     * 

Added: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/StubPropertyMetaData.java
===================================================================
--- projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/StubPropertyMetaData.java	                        (rev 0)
+++ projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/StubPropertyMetaData.java	2007-10-25 02:09:57 UTC (rev 66409)
@@ -0,0 +1,56 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2007, Red Hat Middleware LLC, and individual contributors
+ * 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.metadata.javaee.jboss;
+
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+
+/**
+ * A remapping of ParamValueMetaData to support stub-name, stub-value elements
+ * @author Scott.Stark at jboss.org
+ * @version $Revision$
+ */
+public class StubPropertyMetaData extends ParamValueMetaData
+{
+   private static final long serialVersionUID = 1;
+
+   public String getPropName()
+   {
+      return super.getParamName();
+   }
+   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+   public void setPropName(String name)
+   {
+      super.setParamName(name);
+   }
+   public String getPropValue()
+   {
+      return super.getParamValue();
+   }
+   @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+   public void setPropValue(String value)
+   {
+      super.setParamValue(value);
+   }
+}


Property changes on: projects/metadata/trunk/src/main/java/org/jboss/metadata/javaee/jboss/StubPropertyMetaData.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + native

Modified: projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java
===================================================================
--- projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java	2007-10-25 01:25:23 UTC (rev 66408)
+++ projects/metadata/trunk/src/test/java/org/jboss/test/metadata/ejb/JBoss42UnitTestCase.java	2007-10-25 02:09:57 UTC (rev 66409)
@@ -21,52 +21,25 @@
 */
 package org.jboss.test.metadata.ejb;
 
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Set;
+import java.util.List;
 
+import javax.xml.namespace.QName;
+
 import junit.framework.Test;
 
-import org.jboss.metadata.ApplicationMetaData;
-import org.jboss.metadata.BeanMetaData;
-import org.jboss.metadata.ConfigurationMetaData;
-import org.jboss.metadata.common.ejb.IEnterpriseBeanMetaData;
-import org.jboss.metadata.common.ejb.IEnterpriseBeansMetaData;
-import org.jboss.metadata.ejb.jboss.ContainerConfigurationMetaData;
-import org.jboss.metadata.ejb.jboss.InvokerBindingMetaData;
-import org.jboss.metadata.ejb.jboss.InvokerBindingsMetaData;
-import org.jboss.metadata.ejb.jboss.InvokerProxyBindingMetaData;
-import org.jboss.metadata.ejb.jboss.InvokerProxyBindingsMetaData;
 import org.jboss.metadata.ejb.jboss.JBoss50DTDMetaData;
 import org.jboss.metadata.ejb.jboss.JBoss50MetaData;
 import org.jboss.metadata.ejb.jboss.JBossEnterpriseBeanMetaData;
-import org.jboss.metadata.ejb.jboss.JBossGenericBeanMetaData;
-import org.jboss.metadata.ejb.jboss.JBossMessageDrivenBeanMetaData;
 import org.jboss.metadata.ejb.jboss.JBossMetaData;
-import org.jboss.metadata.ejb.jboss.JBossMetaDataWrapper;
-import org.jboss.metadata.ejb.jboss.JBossServiceBeanMetaData;
-import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
-import org.jboss.metadata.ejb.jboss.ResourceManagerMetaData;
-import org.jboss.metadata.ejb.jboss.ResourceManagersMetaData;
 import org.jboss.metadata.ejb.spec.EjbJar20MetaData;
 import org.jboss.metadata.ejb.spec.EjbJar21MetaData;
-import org.jboss.metadata.ejb.spec.EjbJar2xMetaData;
-import org.jboss.metadata.ejb.spec.EjbJar30MetaData;
-import org.jboss.metadata.ejb.spec.EjbJarMetaData;
-import org.jboss.metadata.ejb.spec.EnterpriseBeansMetaData;
-import org.jboss.metadata.ejb.spec.MessageDrivenBeanMetaData;
-import org.jboss.metadata.ejb.spec.SecurityIdentityMetaData;
-import org.jboss.metadata.ejb.spec.SessionBeanMetaData;
-import org.jboss.metadata.ejb.spec.SubscriptionDurability;
-import org.jboss.metadata.javaee.spec.EnvironmentEntryMetaData;
-import org.jboss.metadata.javaee.spec.ResourceAuthorityType;
-import org.jboss.metadata.javaee.spec.ResourceInjectionTargetMetaData;
-import org.jboss.metadata.javaee.spec.ResourceReferenceMetaData;
-import org.jboss.metadata.javaee.spec.ResourceReferencesMetaData;
-import org.jboss.metadata.javaee.spec.RunAsMetaData;
-import org.jboss.metadata.merge.MergeUtil;
+import org.jboss.metadata.javaee.jboss.JBossPortComponentRef;
+import org.jboss.metadata.javaee.jboss.JBossServiceReferenceMetaData;
+import org.jboss.metadata.javaee.jboss.JBossServiceReferencesMetaData;
+import org.jboss.metadata.javaee.jboss.StubPropertyMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferenceMetaData;
+import org.jboss.metadata.javaee.spec.ServiceReferencesMetaData;
 import org.jboss.test.metadata.javaee.AbstractJavaEEMetaDataTest;
-import org.jboss.test.metadata.javaee.JBossXBTestDelegate;
 import org.jboss.xb.binding.sunday.unmarshalling.DefaultSchemaResolver;
 import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
 
@@ -123,23 +96,34 @@
       JBossMetaData result = unmarshal();
       
       assertEquals(1, result.getEnterpriseBeans().size());
-      JBossEnterpriseBeanMetaData bean = (JBossEnterpriseBeanMetaData) result.getEnterpriseBean("MyStatelessBean");
+      JBossEnterpriseBeanMetaData bean = (JBossEnterpriseBeanMetaData) result.getEnterpriseBean("WebserviceConsumer");
       assertNotNull(bean);
-      Set<String> expected = new HashSet<String>();
-      expected.add("A");
-      expected.add("B");
-      assertEquals(expected, bean.getDepends());
-      
-      assertNotNull(bean.getIgnoreDependency());
-      assertNotNull(bean.getIgnoreDependency().getInjectionTargets());
-      assertEquals(2, bean.getIgnoreDependency().getInjectionTargets().size());
-      int i = 1;
-      for(ResourceInjectionTargetMetaData target : bean.getIgnoreDependency().getInjectionTargets())
-      {
-         assertEquals("Class" + i, target.getInjectionTargetClass());
-         assertEquals(Character.toString((char) ('B' + i)), target.getInjectionTargetName());
-         i++;
-      }
+      ServiceReferencesMetaData refs = bean.getServiceReferences();
+      assertEquals(3, refs.size());
+      assertTrue(refs instanceof JBossServiceReferencesMetaData);
+      ServiceReferenceMetaData OrganizationService = refs.get("OrganizationService");
+      assertEquals("OrganizationService", OrganizationService.getServiceRefName());
+      assertTrue(OrganizationService instanceof JBossServiceReferenceMetaData);
+      JBossServiceReferenceMetaData jOrganizationService = (JBossServiceReferenceMetaData) OrganizationService;
+      assertEquals("file:/wsdlRepository/organization-service.wsdl", jOrganizationService.getWsdlOverride());
+
+      JBossServiceReferenceMetaData SecureService = (JBossServiceReferenceMetaData) refs.get("SecureService");
+      assertNotNull(SecureService);
+      assertEquals("SecureService", SecureService.getServiceRefName());
+      assertEquals("org.jboss.tests.ws.jaxws.webserviceref.SecureEndpointService", SecureService.getServiceClass());
+      QName name = new QName("http://org.jboss.ws/wsref", "SecureEndpointService");
+      assertEquals(name, SecureService.getServiceQname());
+      JBossPortComponentRef pcref = SecureService.getPortComponentRef();
+      assertNotNull(pcref);
+      assertEquals("org.jboss.tests.ws.jaxws.webserviceref.SecureEndpoint", pcref.getServiceEndpointInterface());
+      name = new QName("http://org.jboss.ws/wsref", "SecureEndpointPort");
+      assertEquals(name, pcref.getPortQname());
+      List<StubPropertyMetaData> pcrefProps = pcref.getStubProperties();
+      assertEquals(2, pcrefProps.size());
+      assertEquals("javax.xml.ws.security.auth.username", pcrefProps.get(0).getPropName());
+      assertEquals("kermit", pcrefProps.get(0).getPropValue());
+      assertEquals("javax.xml.ws.security.auth.password", pcrefProps.get(1).getPropName());
+      assertEquals("thefrog", pcrefProps.get(1).getPropValue());
    }
    
 }

Modified: projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml
===================================================================
--- projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml	2007-10-25 01:25:23 UTC (rev 66408)
+++ projects/metadata/trunk/src/test/resources/org/jboss/test/metadata/ejb/JBoss42_testServiceRefQname.xml	2007-10-25 02:09:57 UTC (rev 66409)
@@ -14,7 +14,7 @@
          </service-ref>
          
          <service-ref>
-            <service-ref-name>OrganizationService</service-ref-name>
+            <service-ref-name>SecureOrganizationService</service-ref-name>
             <config-name>Secure Client Config</config-name>
             <config-file>META-INF/jbossws-client-config.xml</config-file>
             <handler-chain>META-INF/jbossws-client-handlers.xml</handler-chain>




More information about the jboss-cvs-commits mailing list