Author: jboynes
Date: Tue Mar 14 13:34:01 2006
New Revision: 385899

URL: http://svn.apache.org/viewcvs?rev=385899&view=rev
Log:
StAX support for ExternalServices

Added:
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
   (with props)
Modified:
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/AssemblyConstants.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ExternalServiceLoader.java
    
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/scdl/loader/impl/SCDLModelContentHandlerImpl.java
    
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/JavaServiceContract.java

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java?rev=385899&r1=385898&r2=385899&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
 Tue Mar 14 13:34:01 2006
@@ -33,6 +33,7 @@
 import org.apache.tuscany.core.loader.assembly.ReferenceLoader;
 import org.apache.tuscany.core.loader.assembly.ServiceLoader;
 import org.apache.tuscany.core.loader.assembly.InterfaceWSDLLoader;
+import org.apache.tuscany.core.loader.assembly.InterfaceJavaLoader;
 import org.apache.tuscany.core.loader.system.SystemImplementationLoader;
 import org.apache.tuscany.core.system.assembly.SystemAssemblyFactory;
 import org.apache.tuscany.core.system.assembly.SystemImplementation;
@@ -98,6 +99,7 @@
         components.add(bootstrapLoader(factory, ComponentTypeLoader.class));
         components.add(bootstrapLoader(factory, EntryPointLoader.class));
         components.add(bootstrapLoader(factory, ExternalServiceLoader.class));
+        components.add(bootstrapLoader(factory, InterfaceJavaLoader.class));
         components.add(bootstrapLoader(factory, InterfaceWSDLLoader.class));
         components.add(bootstrapLoader(factory, ModuleFragmentLoader.class));
         components.add(bootstrapLoader(factory, ModuleLoader.class));

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/AssemblyConstants.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/AssemblyConstants.java?rev=385899&r1=385898&r2=385899&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/AssemblyConstants.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/AssemblyConstants.java
 Tue Mar 14 13:34:01 2006
@@ -29,6 +29,7 @@
     public static final QName ENTRY_POINT = new QName(SCA_NAMESPACE, 
"entryPoint");
     public static final QName EXTERNAL_SERVICE = new QName(SCA_NAMESPACE, 
"externalService");
     public static final QName IMPORT_WSDL = new QName(SCA_NAMESPACE, 
"import.wsdl");
+    public static final QName INTERFACE_JAVA = new QName(SCA_NAMESPACE, 
"interface.java");
     public static final QName INTERFACE_WSDL = new QName(SCA_NAMESPACE, 
"interface.wsdl");
     public static final QName MODULE = new QName(SCA_NAMESPACE, "module");
     public static final QName MODULE_FRAGMENT = new QName(SCA_NAMESPACE, 
"moduleFragment");

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ExternalServiceLoader.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ExternalServiceLoader.java?rev=385899&r1=385898&r2=385899&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ExternalServiceLoader.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ExternalServiceLoader.java
 Tue Mar 14 13:34:01 2006
@@ -33,6 +33,7 @@
 import org.apache.tuscany.model.assembly.OverrideOption;
 import org.apache.tuscany.model.assembly.Service;
 import org.apache.tuscany.model.assembly.ServiceContract;
+import org.apache.tuscany.model.assembly.Binding;
 import org.apache.tuscany.common.resource.ResourceLoader;
 
 /**
@@ -50,8 +51,9 @@
 
     public ExternalService load(XMLStreamReader reader, ResourceLoader 
resourceLoader) throws XMLStreamException, ConfigurationLoadException {
         assert EXTERNAL_SERVICE.equals(reader.getName());
+        String name = reader.getAttributeValue(null, "name");
         ExternalService externalService = factory.createExternalService();
-        externalService.setName(reader.getAttributeValue(null, "name"));
+        externalService.setName(name);
         
externalService.setOverrideOption(StAXUtil.overrideOption(reader.getAttributeValue(null,
 "overridable"), OverrideOption.NO));
 
         while (true) {
@@ -60,10 +62,13 @@
                 AssemblyModelObject o = registry.load(reader, resourceLoader);
                 if (o instanceof ServiceContract) {
                     Service service = factory.createService();
+                    service.setName(name);
                     service.setServiceContract((ServiceContract) o);
                     ConfiguredService configuredService = 
factory.createConfiguredService();
                     configuredService.setService(service);
                     externalService.setConfiguredService(configuredService);
+                } else if (o instanceof Binding) {
+                    externalService.getBindings().add((Binding) o);
                 }
                 reader.next();
                 break;

Added: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java?rev=385899&view=auto
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
 (added)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
 Tue Mar 14 13:34:01 2006
@@ -0,0 +1,49 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+package org.apache.tuscany.core.loader.assembly;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import org.apache.tuscany.common.resource.ResourceLoader;
+import org.apache.tuscany.core.config.ConfigurationLoadException;
+import org.apache.tuscany.model.assembly.Scope;
+import org.apache.tuscany.model.types.java.JavaServiceContract;
+
+/**
+ * @version $Rev$ $Date$
+ */
[EMAIL PROTECTED]("MODULE")
+public class InterfaceJavaLoader extends AbstractLoader {
+    public QName getXMLType() {
+        return AssemblyConstants.INTERFACE_JAVA;
+    }
+
+    public Class<JavaServiceContract> getModelType() {
+        return JavaServiceContract.class;
+    }
+
+    public JavaServiceContract load(XMLStreamReader reader, ResourceLoader 
resourceLoader) throws XMLStreamException, ConfigurationLoadException {
+        assert AssemblyConstants.INTERFACE_JAVA.equals(reader.getName());
+        JavaServiceContract serviceContract = 
factory.createJavaServiceContract();
+        serviceContract.setScope(Scope.INSTANCE);
+        serviceContract.setInterfaceName(reader.getAttributeValue(null, 
"interface"));
+        
serviceContract.setCallbackInterfaceName(reader.getAttributeValue(null, 
"callbackInterface"));
+        return serviceContract;
+    }
+}

Propchange: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/InterfaceJavaLoader.java
------------------------------------------------------------------------------
    svn:keywords = Rev,Date

Modified: 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/scdl/loader/impl/SCDLModelContentHandlerImpl.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/scdl/loader/impl/SCDLModelContentHandlerImpl.java?rev=385899&r1=385898&r2=385899&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/scdl/loader/impl/SCDLModelContentHandlerImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/scdl/loader/impl/SCDLModelContentHandlerImpl.java
 Tue Mar 14 13:34:01 2006
@@ -247,8 +247,8 @@
         final JavaServiceContract 
serviceContract=factory.createJavaServiceContract();
         serviceContract.setScope(Scope.INSTANCE);
 
-        
((JavaServiceContractImpl)serviceContract).setInterfaceName(object.getInterface());
-        
((JavaServiceContractImpl)serviceContract).setCallbackInterfaceName(object.getCallbackInterface());
+        serviceContract.setInterfaceName(object.getInterface());
+        
serviceContract.setCallbackInterfaceName(object.getCallbackInterface());
         
         linkServiceContract(object, serviceContract);
         

Modified: 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/JavaServiceContract.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/JavaServiceContract.java?rev=385899&r1=385898&r2=385899&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/JavaServiceContract.java
 (original)
+++ 
incubator/tuscany/java/sca/model/src/main/java/org/apache/tuscany/model/types/java/JavaServiceContract.java
 Tue Mar 14 13:34:01 2006
@@ -23,5 +23,8 @@
  * Represents a Java service contract.
  */
 public interface JavaServiceContract extends ServiceContract {
-    
+
+    void setInterfaceName(String interfaceName);
+
+    void setCallbackInterfaceName(String callbackInterfaceName);
 }


Reply via email to