Author: rfeng
Date: Fri May 15 22:38:11 2009
New Revision: 775370

URL: http://svn.apache.org/viewvc?rev=775370&view=rev
Log:
Adding support for <baseURI> element of binding base uri configuration

Modified:
    
tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessor.java
    
tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessorTestCase.java
    
tuscany/java/sca/modules/node-impl/src/test/resources/org/apache/tuscany/sca/node/configuration/node1.xml

Modified: 
tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessor.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessor.java?rev=775370&r1=775369&r2=775370&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessor.java
 (original)
+++ 
tuscany/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessor.java
 Fri May 15 22:38:11 2009
@@ -57,6 +57,7 @@
     private static final QName NODE = new QName(SCA11_TUSCANY_NS, "node");
     private static final QName CONTRIBUTION = new QName(SCA11_TUSCANY_NS, 
"contribution");
     private static final QName BINDING = new QName(SCA11_TUSCANY_NS, 
"binding");
+    private static final QName BASE_URI = new QName(SCA11_TUSCANY_NS, 
"baseURI");
     private static final QName DEPLOYMENT_COMPOSITE = new 
QName(SCA11_TUSCANY_NS, "deploymentComposite");
 
     private static final String SCA11_NS = 
"http://docs.oasis-open.org/ns/opencsa/sca/200903";;
@@ -100,6 +101,7 @@
         NodeConfiguration node = null;
         ContributionConfiguration contribution = null;
         DeploymentComposite composite = null;
+        BindingConfiguration binding = null;
 
         // Skip to end element
         while (true) {
@@ -117,7 +119,7 @@
                         
contribution.setLocation(reader.getAttributeValue(null, "location"));
                         node.getContributions().add(contribution);
                     } else if (BINDING.equals(name)) {
-                        BindingConfiguration binding = 
nodeConfigurationFactory.createBindingConfiguration();
+                        binding = 
nodeConfigurationFactory.createBindingConfiguration();
                         binding.setBindingType(getQName(reader, "name"));
                         String baseURIs = reader.getAttributeValue(null, 
"baseURIs");
                         if (baseURIs != null) {
@@ -133,6 +135,15 @@
                         if (contribution != null) {
                             
contribution.getDeploymentComposites().add(composite);
                         }
+                    } else if(BASE_URI.equals(name)) {
+                        // We also support <baseURI> element
+                        String baseURI = reader.getElementText();
+                        if (baseURI != null && binding != null) {
+                            baseURI = baseURI.trim();
+                            binding.addBaseURI(baseURI);
+                        }
+                        // getElementText() moves the event to END_ELEMENT
+                        continue;
                     } else if (COMPOSITE.equals(name)) {
                         /*
                         Object model = processor.read(reader);
@@ -155,6 +166,10 @@
                         return node;
                     } else if (CONTRIBUTION.equals(name)) {
                         contribution = null;
+                    } else if (DEPLOYMENT_COMPOSITE.equals(name)) {
+                        composite = null;
+                    } else if (BINDING.equals(name)) {
+                        binding = null;
                     }
             }
             if (reader.hasNext()) {

Modified: 
tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessorTestCase.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessorTestCase.java?rev=775370&r1=775369&r2=775370&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessorTestCase.java
 (original)
+++ 
tuscany/java/sca/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/configuration/xml/NodeConfigurationProcessorTestCase.java
 Fri May 15 22:38:11 2009
@@ -70,7 +70,7 @@
         XMLStreamWriter writer = xmlOutputFactory.createXMLStreamWriter(sw);
         processor.write(config, writer);
         writer.flush();
-        // System.out.println(sw.toString());
+        System.out.println(sw.toString());
     }
 
     /**

Modified: 
tuscany/java/sca/modules/node-impl/src/test/resources/org/apache/tuscany/sca/node/configuration/node1.xml
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/node-impl/src/test/resources/org/apache/tuscany/sca/node/configuration/node1.xml?rev=775370&r1=775369&r2=775370&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/node-impl/src/test/resources/org/apache/tuscany/sca/node/configuration/node1.xml
 (original)
+++ 
tuscany/java/sca/modules/node-impl/src/test/resources/org/apache/tuscany/sca/node/configuration/node1.xml
 Fri May 15 22:38:11 2009
@@ -27,6 +27,9 @@
     <!-- Each base URI is for a protocol supported by the binding -->
     <binding name="sca:binding.ws" baseURIs="http://localhost:8080/ws 
https://localhost:8081/ws"/>
     <binding name="tuscany:binding.rmi" baseURIs="rmi://localhost:8080/rmi"/>
+    <binding name="tuscany:binding.jsonrpc">
+        <baseURI>http://localhost:8080/jsonrpc</baseURI>
+    </binding>
 
     <!-- Configure a list of contributions -->
     <contribution uri="http://c1"; location="file:///a.jar"/>


Reply via email to