You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jb...@apache.org on 2007/03/03 15:12:35 UTC

svn commit: r514159 - in /incubator/tuscany/java/sca/kernel: core/src/main/java/org/apache/tuscany/core/implementation/composite/ core/src/test/java/org/apache/tuscany/core/deployer/ core/src/test/java/org/apache/tuscany/core/implementation/composite/ ...

Author: jboynes
Date: Sat Mar  3 06:12:34 2007
New Revision: 514159

URL: http://svn.apache.org/viewvc?view=rev&rev=514159
Log:
support targetNamespace for composites

Modified:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeLoader.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderWireResolutionTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/resources/org/apache/tuscany/core/deployer/boot1.scdl
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/CompositeComponentType.java

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeLoader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeLoader.java?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeLoader.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeLoader.java Sat Mar  3 06:12:34 2007
@@ -80,10 +80,14 @@
         XMLStreamReader reader,
         DeploymentContext deploymentContext) throws XMLStreamException, LoaderException {
 
-        CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> type =
-            new CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>();
-        type.setName(reader.getAttributeValue(null, "name"));
+        String name = reader.getAttributeValue(null, "name");
+        String targetNamespace = reader.getAttributeValue(null, "targetNamespace");
         boolean autowire = Boolean.parseBoolean(reader.getAttributeValue(null, "autowire"));
+
+        CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> type =
+            new CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>(
+                new QName(targetNamespace, name)
+            );
         type.setAutowire(autowire);
         boolean done = false;
         while (!done) {

Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java Sat Mar  3 06:12:34 2007
@@ -23,6 +23,7 @@
 import java.util.Collection;
 import java.util.Map;
 import javax.xml.stream.XMLInputFactory;
+import javax.xml.namespace.QName;
 
 import org.apache.tuscany.spi.builder.Connector;
 import org.apache.tuscany.spi.component.Component;
@@ -81,7 +82,7 @@
         CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> composite =
             implementation.getComponentType();
         assertNotNull(composite);
-        assertEquals("boot1", composite.getName());
+        assertEquals(new QName("http://example.com", "boot1"), composite.getName());
 
         // check parse of <service>
         Map<String, ServiceDefinition> services = composite.getDeclaredServices();

Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderTestCase.java?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderTestCase.java Sat Mar  3 06:12:34 2007
@@ -40,23 +40,26 @@
 public class CompositeLoaderTestCase extends TestCase {
     public static final QName COMPOSITE = new QName(SCA_NS, "composite");
     private CompositeLoader loader;
+    private QName name;
 
     public void testLoadNameAndDefaultAutowire() throws Exception {
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn(null);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
         EasyMock.expect(reader.getName()).andReturn(COMPOSITE);
         EasyMock.replay(reader);
         CompositeComponentType<?, ?, ?> type = loader.load(null, reader, null);
-        assertEquals("composite", type.getName());
+        assertEquals(name, type.getName());
         assertFalse(type.isAutowire());
         EasyMock.verify(reader);
     }
 
     public void testAutowire() throws Exception {
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn("true");
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
         EasyMock.expect(reader.getName()).andReturn(COMPOSITE);
@@ -84,7 +87,8 @@
         EasyMock.replay(registry);
         DeploymentContext context = new RootDeploymentContext(null, null, null, null, null, true);
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn("true");
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.START_ELEMENT);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
@@ -114,7 +118,8 @@
         EasyMock.replay(registry);
         DeploymentContext context = new RootDeploymentContext(null, null, null, null, null, true);
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn(null);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.START_ELEMENT);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
@@ -143,7 +148,8 @@
         EasyMock.replay(registry);
         DeploymentContext context = new RootDeploymentContext(null, null, null, null, null, false);
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn(null);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.START_ELEMENT);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
@@ -172,7 +178,8 @@
         EasyMock.replay(registry);
         DeploymentContext context = new RootDeploymentContext(null, null, null, null, null, true);
         XMLStreamReader reader = EasyMock.createMock(XMLStreamReader.class);
-        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn("composite");
+        EasyMock.expect(reader.getAttributeValue(null, "name")).andReturn(name.getLocalPart());
+        EasyMock.expect(reader.getAttributeValue(null, "targetNamespace")).andReturn(name.getNamespaceURI());
         EasyMock.expect(reader.getAttributeValue(null, "autowire")).andReturn("false");
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.START_ELEMENT);
         EasyMock.expect(reader.next()).andReturn(XMLStreamConstants.END_ELEMENT);
@@ -189,5 +196,6 @@
         LoaderRegistry registry = EasyMock.createNiceMock(LoaderRegistry.class);
         EasyMock.replay(registry);
         loader = new CompositeLoader(registry, null);
+        name = new QName("http://example.com", "composite");
     }
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderWireResolutionTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderWireResolutionTestCase.java?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderWireResolutionTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLoaderWireResolutionTestCase.java Sat Mar  3 06:12:34 2007
@@ -179,7 +179,7 @@
 
     public void setUp() throws Exception {
         componentType = new CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>();
-        componentType.setName("TestComposite");
+
         //add a service to the composite
         ServiceDefinition serviceDefn = new ServiceDefinition(URI.create("#compositeService1"), null, true);
         ServiceDefinition boundSvcDefn = new ServiceDefinition(URI.create("#boundSvc"), null, true, null);

Modified: incubator/tuscany/java/sca/kernel/core/src/test/resources/org/apache/tuscany/core/deployer/boot1.scdl
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/resources/org/apache/tuscany/core/deployer/boot1.scdl?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/resources/org/apache/tuscany/core/deployer/boot1.scdl (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/resources/org/apache/tuscany/core/deployer/boot1.scdl Sat Mar  3 06:12:34 2007
@@ -19,7 +19,7 @@
 -->
 <composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
            xmlns:system="http://tuscany.apache.org/xmlns/system/1.0-SNAPSHOT"
-           name="boot1">
+           targetNamespace="http://example.com" name="boot1">
     <service name="service" promote = "component">
         <interface.java interface="org.apache.tuscany.core.mock.component.BasicInterface"/>
     </service>

Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/CompositeComponentType.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/CompositeComponentType.java?view=diff&rev=514159&r1=514158&r2=514159
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/CompositeComponentType.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/CompositeComponentType.java Sat Mar  3 06:12:34 2007
@@ -24,6 +24,8 @@
 import java.util.List;
 import java.util.Map;
 
+import javax.xml.namespace.QName;
+
 import org.apache.tuscany.spi.util.UriHelper;
 
 /**
@@ -35,7 +37,7 @@
     R extends ReferenceDefinition,
     P extends Property<?>> extends ComponentType<S, R, P> {
 
-    private String name;
+    private QName name;
     private boolean autowire;
     private final Map<String, ComponentDefinition<? extends Implementation<?>>> components =
         new HashMap<String, ComponentDefinition<? extends Implementation<?>>>();
@@ -46,11 +48,32 @@
         implementationScope = Scope.SYSTEM;
     }
 
-    public String getName() {
+    /**
+     * Constructor defining the composite name.
+     *
+     * @param name the qualified name of this composite
+     */
+    public CompositeComponentType(QName name) {
+        this();
+        this.name = name;
+    }
+
+    /**
+     * Returns the qualified name of this composite.
+     * The namespace portion of this name is the targetNamespace for other qualified names used in the composite.
+     *
+     * @return the qualified name of this composite
+     */
+    public QName getName() {
         return name;
     }
 
-    public void setName(String name) {
+    /**
+     * Set the qualified name of this composite.
+     *
+     * @param name the qualified name of this composite
+     */
+    public void setName(QName name) {
         this.name = name;
     }
 
@@ -191,5 +214,19 @@
 
     public void add(Include include) {
         includes.put(include.getName(), include);
+    }
+
+
+    public int hashCode() {
+        return name.hashCode();
+    }
+
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+
+        CompositeComponentType that = (CompositeComponentType) o;
+        return name.equals(that.name);
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org