You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2006/02/21 08:14:50 UTC

svn commit: r379382 [1/2] - in /incubator/tuscany/java/sca/core/src: main/java/org/apache/tuscany/core/addressing/ main/java/org/apache/tuscany/core/addressing/impl/ main/java/org/apache/tuscany/core/addressing/sdo/ main/java/org/apache/tuscany/core/bu...

Author: jsdelfino
Date: Mon Feb 20 23:14:45 2006
New Revision: 379382

URL: http://svn.apache.org/viewcvs?rev=379382&view=rev
Log:
ported to new POJO model

Removed:
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/sdo/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/PortRuntimeConfigurationBuilderImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/SystemRuntimeConfigurationBuilderImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/TuscanyModuleContextBuilder.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/TuscanyModuleComponentContextImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/deprecated/sdo/util/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/PojoMessageFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/PojoMessageImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/sdo/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/pipeline/impl/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/pojo/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/sdo/
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/ProxyFactoryBuilder.java
Modified:
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/AddressingFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/impl/EndpointReferenceImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/RuntimeConfiguration.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilder.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/EMFConfigurationLoader.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/AggregateContext.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ConfigurationContext.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ContextConstants.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeAwareContext.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeStrategy.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/AggregateContextImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/AbstractScopeStrategy.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/DefaultScopeStrategy.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ReferenceTargetFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/SDOObjectFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKInvocationHandler.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKProxyFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/Message.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/MessageImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeScopeStrategy.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemAssemblyFactory.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemBinding.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemImplementation.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemBindingImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemImplementationImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentContextBuilder.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemExternalServiceBuilder.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemComponentRuntimeConfiguration.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointRuntimeConfiguration.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceRuntimeConfiguration.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectRuntimeConfiguration.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/context/SystemAggregateContextImpl.java
    incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/context/SystemScopeStrategy.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockConfigContext.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/mock/MockSystemAssemblyFactory.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeBootTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/runtime/RuntimeContextImplTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/assembly/tests/PortRuntimeBuilderTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/assembly/tests/SystemAssemblyLoaderTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/assembly/tests/SystemAssemblyRuntimeBuilderTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/builder/impl/AssemblyVisitorTestCase.java
    incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/system/context/SystemBootstrapTestCase.java

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/AddressingFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/AddressingFactory.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/AddressingFactory.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/AddressingFactory.java Mon Feb 20 23:14:45 2006
@@ -34,4 +34,4 @@
      */
     String createMessageID();
 
-} //AddressingFactory
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/impl/EndpointReferenceImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/impl/EndpointReferenceImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/impl/EndpointReferenceImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/addressing/impl/EndpointReferenceImpl.java Mon Feb 20 23:14:45 2006
@@ -16,83 +16,90 @@
  */
 package org.apache.tuscany.core.addressing.impl;
 
+import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.tuscany.core.addressing.EndpointReference;
-import org.apache.tuscany.core.addressing.sdo.impl.EndpointReferenceElementImpl;
 import org.apache.tuscany.core.message.Message;
 import org.apache.tuscany.core.message.handler.MessageHandler;
 import org.apache.tuscany.model.assembly.ConfiguredPort;
 
 /**
- * An implementation of the model object '<em><b>Endpoint Reference</b></em>'.
+ * An implementation of EndpointReference.
  */
-public class EndpointReferenceImpl extends EndpointReferenceElementImpl implements EndpointReference {
+public class EndpointReferenceImpl implements EndpointReference {
 
     private ConfiguredPort configuredPort;
     private MessageHandler messageHandler;
+    private String address;
+    private String portTypeName;
+    private String portName;
+    private String serviceName;
+    private Map<String, Object> referenceParameters;
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#getAddress()
+     * @see org.apache.tuscany.core.addressing.EndpointReference#getAddress()
      */
     public String getAddress() {
-        return super.getAddress();
+        return address;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#setAddress(java.lang.String)
+     * @see org.apache.tuscany.core.addressing.EndpointReference#setAddress(java.lang.String)
      */
     public void setAddress(String value) {
-        super.setAddress(value);
+        this.address=value;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#getPortTypeName()
+     * @see org.apache.tuscany.core.addressing.EndpointReference#getPortTypeName()
      */
     public String getPortTypeName() {
-        return super.getPortTypeName();
+        return portTypeName;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#setPortTypeName(java.lang.String)
+     * @see org.apache.tuscany.core.addressing.EndpointReference#setPortTypeName(java.lang.String)
      */
     public void setPortTypeName(String value) {
-        super.setPortName(value);
+        this.portTypeName=value;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#getServiceName()
+     * @see org.apache.tuscany.core.addressing.EndpointReference#getServiceName()
      */
     public String getServiceName() {
-        return super.getServiceName();
+        return serviceName;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#getPortName()
+     * @see org.apache.tuscany.core.addressing.EndpointReference#getPortName()
      */
     public String getPortName() {
-        return super.getPortName();
+        return portName;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#setServiceName(java.lang.String)
+     * @see org.apache.tuscany.core.addressing.EndpointReference#setServiceName(java.lang.String)
      */
     public void setServiceName(String value) {
-        super.setServiceName(value);
+        this.serviceName=value;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#setPortName(java.lang.String)
+     * @see org.apache.tuscany.core.addressing.EndpointReference#setPortName(java.lang.String)
      */
     public void setPortName(String portName) {
-        super.setPortName(portName);
+        this.portName=portName;
     }
 
     /**
-     * @see org.apache.tuscany.core.client.addressing.sdo.EndpointReferenceType#getReferenceParameters()
+     * @see org.apache.tuscany.core.addressing.EndpointReference#getReferenceParameters()
      */
     public Map<String, Object> getReferenceParameters() {
-        return super.getReferenceParameters();
+        if (referenceParameters==null)
+            referenceParameters=new HashMap<String, Object>();
+        return referenceParameters;
     }
 
     /**
@@ -172,4 +179,4 @@
         return messageHandler.processMessage(message);
     }
 
-} //EndpointReferenceImpl
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/RuntimeConfiguration.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/RuntimeConfiguration.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/RuntimeConfiguration.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/RuntimeConfiguration.java Mon Feb 20 23:14:45 2006
@@ -4,6 +4,7 @@
 
 import org.apache.tuscany.core.context.Context;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Implementations create instance contexts based on a compiled runtime
@@ -22,7 +23,7 @@
      */
     public T createInstanceContext() throws ContextCreationException;
     
-    public int getScope();
+    public Scope getScope();
     
     public String getName();
     

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilder.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilder.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilder.java Mon Feb 20 23:14:45 2006
@@ -13,10 +13,13 @@
  */
 package org.apache.tuscany.core.builder.impl;
 
+import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
+import javax.wsdl.OperationType;
+
 import org.apache.tuscany.core.builder.BuilderConfigException;
 import org.apache.tuscany.core.builder.WireBuilder;
 import org.apache.tuscany.core.context.QualifiedName;
@@ -24,7 +27,6 @@
 import org.apache.tuscany.core.invocation.InvocationConfiguration;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.message.channel.impl.MessageChannelImpl;
-import org.apache.tuscany.model.types.OperationType;
 import org.osoa.sca.annotations.Scope;
 
 /**
@@ -55,24 +57,20 @@
         // get the proxy chain for the target
         if (targetFactory != null) {
             // if null, the target side has no interceptors or handlers
-            Map<OperationType, InvocationConfiguration> targetInvocationConfigs = targetFactory.getProxyConfiguration()
-                    .getInvocationConfigurations();
+            Map<Method, InvocationConfiguration> targetInvocationConfigs = targetFactory.getProxyConfiguration().getInvocationConfigurations();
             for (InvocationConfiguration sourceInvocationConfig : sourceFactory.getProxyConfiguration()
                     .getInvocationConfigurations().values()) {
                 // match invocation chains
-                InvocationConfiguration targetInvocationConfig = targetInvocationConfigs.get(sourceInvocationConfig
-                        .getOperationType());
+                InvocationConfiguration targetInvocationConfig = targetInvocationConfigs.get(sourceInvocationConfig.getMethod());
                 // if handler is configured, add that
                 if (targetInvocationConfig.getRequestHandlers() != null) {
-                    sourceInvocationConfig.setTargetRequestChannel(new MessageChannelImpl(targetInvocationConfig
-                            .getRequestHandlers()));
-                    sourceInvocationConfig.setTargetResponseChannel(new MessageChannelImpl(targetInvocationConfig
-                            .getResponseHandlers()));
+                    sourceInvocationConfig.setTargetRequestChannel(new MessageChannelImpl(targetInvocationConfig.getRequestHandlers()));
+                    sourceInvocationConfig.setTargetResponseChannel(new MessageChannelImpl(targetInvocationConfig.getResponseHandlers()));
                 } else {
                     // no handlers, just connect interceptors
                     if (targetInvocationConfig.getTargetInterceptor() == null){
                         BuilderConfigException e = new BuilderConfigException("No target handler or interceptor for operation");
-                        e.setIdentifier(targetInvocationConfig.getOperationType().getName());
+                        e.setIdentifier(targetInvocationConfig.getMethod().getName());
                         throw e;
                     }
                     sourceInvocationConfig.addTargetInterceptor(targetInvocationConfig.getTargetInterceptor());

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/client/TuscanyRuntime.java Mon Feb 20 23:14:45 2006
@@ -16,9 +16,6 @@
  */
 package org.apache.tuscany.core.client;
 
-import org.osoa.sca.SCA;
-import org.osoa.sca.ServiceRuntimeException;
-
 import org.apache.tuscany.common.monitor.MonitorFactory;
 import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
 import org.apache.tuscany.common.resource.loader.ResourceLoader;
@@ -31,11 +28,14 @@
 import org.apache.tuscany.core.context.ScopeStrategy;
 import org.apache.tuscany.core.context.TuscanyModuleComponentContext;
 import org.apache.tuscany.core.context.impl.EventContextImpl;
-import org.apache.tuscany.core.context.impl.TuscanyModuleComponentContextImpl;
 import org.apache.tuscany.core.context.scope.DefaultScopeStrategy;
 import org.apache.tuscany.model.assembly.AssemblyModelContext;
 import org.apache.tuscany.model.assembly.ModuleComponent;
 import org.apache.tuscany.model.assembly.impl.AssemblyModelContextImpl;
+import org.apache.tuscany.model.assembly.loader.AssemblyLoader;
+import org.apache.tuscany.model.assembly.loader.impl.AssemblyLoaderImpl;
+import org.osoa.sca.SCA;
+import org.osoa.sca.ServiceRuntimeException;
 
 /**
  * Create and initialize a Tuscany SCA runtime environment.
@@ -75,7 +75,8 @@
         // create a resource loader from the current classloader
         ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
         ResourceLoader resourceLoader = ResourceLoaderFactory.getResourceLoader(classLoader);
-        AssemblyModelContext modelContext = new AssemblyModelContextImpl(resourceLoader);
+        AssemblyLoader assemblyLoader = new AssemblyLoaderImpl();
+        AssemblyModelContext modelContext = new AssemblyModelContextImpl(assemblyLoader, resourceLoader);
 
         // load the configuration files using EMF
         ConfigurationLoader loader = new EMFConfigurationLoader(modelContext);
@@ -84,7 +85,10 @@
         // create the module component context
         EventContext context = new EventContextImpl();
         ScopeStrategy scopeStrategy = new DefaultScopeStrategy();
-        ctx = new TuscanyModuleComponentContextImpl(moduleComponent, context, scopeStrategy, modelContext);
+        
+        //FIXME This is going away and will be replaced by Jim's AggregateContext
+        //ctx = new TuscanyModuleComponentContextImpl(moduleComponent, context, scopeStrategy, modelContext);
+        ctx = null;
     }
 
     /**

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/EMFConfigurationLoader.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/EMFConfigurationLoader.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/EMFConfigurationLoader.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/EMFConfigurationLoader.java Mon Feb 20 23:14:45 2006
@@ -27,12 +27,12 @@
 import org.apache.tuscany.core.config.InvalidRootElementException;
 import org.apache.tuscany.core.config.MissingResourceException;
 import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.AssemblyLoader;
 import org.apache.tuscany.model.assembly.AssemblyModelContext;
 import org.apache.tuscany.model.assembly.ComponentType;
 import org.apache.tuscany.model.assembly.Module;
 import org.apache.tuscany.model.assembly.ModuleComponent;
 import org.apache.tuscany.model.assembly.ModuleFragment;
+import org.apache.tuscany.model.assembly.loader.AssemblyLoader;
 
 /**
  * Implementation of a {@link ConfigurationLoader} that uses EMF to load the XML documents.

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/AggregateContext.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/AggregateContext.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/AggregateContext.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/AggregateContext.java Mon Feb 20 23:14:45 2006
@@ -3,8 +3,8 @@
 import java.util.List;
 
 import org.apache.tuscany.core.config.ConfigurationException;
-import org.apache.tuscany.model.assembly.ExtensibleModelObject;
-import org.apache.tuscany.model.assembly.Part;
+import org.apache.tuscany.model.assembly.Extensible;
+import org.apache.tuscany.model.assembly.AggregatePart;
 
 /**
  * A context which contains child component contexts.
@@ -33,7 +33,7 @@
 
     /**
      * Adds runtime artifacts represented by the set of model objects to the aggregate context by merging them with
-     * existing artifacts. Implementing classes may support only a subset of {@link Part} types.
+     * existing artifacts. Implementing classes may support only a subset of {@link AggregatePart} types.
      * 
      * @see org.apache.tuscany.model.assembly.Component
      * @see org.apache.tuscany.model.assembly.ModuleComponent
@@ -41,11 +41,11 @@
      * @see org.apache.tuscany.model.assembly.EntryPoint
      * @see org.apache.tuscany.model.assembly.ExternalService
      */
-    public void registerModelObjects(List<ExtensibleModelObject> models) throws ConfigurationException;
+    public void registerModelObjects(List<Extensible> models) throws ConfigurationException;
 
     /**
      * Adds a runtime artifact represented by the model object to the aggregate context by merging it with existing
-     * artifacts. Implementing classes may support only a subset of {@link Part} types.
+     * artifacts. Implementing classes may support only a subset of {@link AggregatePart} types.
      * 
      * @see org.apache.tuscany.model.assembly.Component
      * @see org.apache.tuscany.model.assembly.ModuleComponent
@@ -53,7 +53,7 @@
      * @see org.apache.tuscany.model.assembly.EntryPoint
      * @see org.apache.tuscany.model.assembly.ExternalService
      */
-    public void registerModelObject(ExtensibleModelObject model) throws ConfigurationException;
+    public void registerModelObject(Extensible model) throws ConfigurationException;
 
     /**
      * Returns the child context associated with a given name

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ConfigurationContext.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ConfigurationContext.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ConfigurationContext.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ConfigurationContext.java Mon Feb 20 23:14:45 2006
@@ -16,7 +16,7 @@
 import org.apache.tuscany.core.builder.BuilderConfigException;
 import org.apache.tuscany.core.config.ConfigurationException;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
-import org.apache.tuscany.model.assembly.ExtensibleModelObject;
+import org.apache.tuscany.model.assembly.Extensible;
 
 /**
  * Offers configuration services in the runtime. A ConfigurationContext is able to configure a model and then build the
@@ -34,7 +34,7 @@
      * @param model the model object to be configured
      * @throws ConfigurationException
      */
-    public void configure(ExtensibleModelObject model) throws ConfigurationException;
+    public void configure(Extensible model) throws ConfigurationException;
 
     /**
      * Decorates the supplied model object with a {@link org.apache.tuscany.core.builder.RuntimeConfiguration} that can
@@ -45,7 +45,7 @@
      * @throws BuilderConfigException
      * @see org.apache.tuscany.core.builder.RuntimeConfiguration
      */
-    public void build(AggregateContext parent, ExtensibleModelObject model) throws BuilderConfigException;
+    public void build(AggregateContext parent, Extensible model) throws BuilderConfigException;
 
     /**
      * Constructs a wire from a source proxy factory to a corresponding target, potentially performing optimizations

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ContextConstants.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ContextConstants.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ContextConstants.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ContextConstants.java Mon Feb 20 23:14:45 2006
@@ -16,7 +16,8 @@
  */
 package org.apache.tuscany.core.context;
 
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
+
 
 /**
  * Includes Context-related constants
@@ -25,13 +26,11 @@
  */
 public interface ContextConstants {
 
-    public static final int UNDEFINED_SCOPE = -2;
-    public static final int AGGREGATE_SCOPE = -1;
-    public static final ScopeEnum AGGREGATE_SCOPE_ENUM = new ScopeEnum(AGGREGATE_SCOPE,"aggregate");
-    public static final int MODULE_SCOPE = ScopeEnum.MODULE;
-    public static final int SESSION_SCOPE = ScopeEnum.SESSION;
-    public static final int REQUEST_SCOPE = ScopeEnum.REQUEST;
-    public static final int STATELESS = ScopeEnum.INSTANCE;
+    public static final Scope AGGREGATE_SCOPE = Scope.AGGREGATE;
+    public static final Scope MODULE_SCOPE = Scope.MODULE;
+    public static final Scope SESSION_SCOPE = Scope.SESSION;
+    public static final Scope REQUEST_SCOPE = Scope.REQUEST;
+    public static final Scope STATELESS = Scope.INSTANCE;
 
     public static final String NAME_SEPARATOR = "/";
 

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeAwareContext.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeAwareContext.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeAwareContext.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeAwareContext.java Mon Feb 20 23:14:45 2006
@@ -15,6 +15,8 @@
 
 import java.util.Map;
 
+import org.apache.tuscany.model.assembly.Scope;
+
 /**
  * Denotes an aggregate context that supports scopes
  * 
@@ -25,5 +27,5 @@
     /**
      * Returns an immutable collection of scopes keyed by type for the aggregate context
      */
-    public Map<Integer, ScopeContext> getScopeContexts();
+    public Map<Scope, ScopeContext> getScopeContexts();
 }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeStrategy.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeStrategy.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeStrategy.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/ScopeStrategy.java Mon Feb 20 23:14:45 2006
@@ -18,6 +18,8 @@
 
 import java.util.Map;
 
+import org.apache.tuscany.model.assembly.Scope;
+
 /**
  * Implementations provide scope container creation facilities and scope semantics to the runtime
  * 
@@ -31,11 +33,11 @@
     /**
      * Creates and returns new instances of configured scope containers
      */
-    public Map<Integer, ScopeContext> createScopes(EventContext eventContext);
+    public Map<Scope, ScopeContext> createScopes(EventContext eventContext);
 
     /**
      * Determines whether a wire proceeds from a source of higher scope to a target of lesser scope
      */
-    public boolean downScopeReference(int sourceScope, int targetScope);
+    public boolean downScopeReference(Scope sourceScope, Scope targetScope);
 
 }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/AggregateContextImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/AggregateContextImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/AggregateContextImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/AggregateContextImpl.java Mon Feb 20 23:14:45 2006
@@ -34,7 +34,7 @@
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.annotation.Autowire;
 import org.apache.tuscany.model.assembly.AssemblyModelContext;
-import org.apache.tuscany.model.assembly.ExtensibleModelObject;
+import org.apache.tuscany.model.assembly.Extensible;
 import org.apache.tuscany.model.assembly.ModuleComponent;
 import org.osoa.sca.RequestContext;
 import org.osoa.sca.ServiceReference;
@@ -115,10 +115,6 @@
         throw new UnsupportedOperationException();
     }
 
-    public org.osoa.sca.model.Module getMetaData() {
-        throw new UnsupportedOperationException();
-    }
-
     public RequestContext getRequestContext() {
         throw new UnsupportedOperationException();
     }
@@ -171,7 +167,7 @@
     }
 
     @Override
-    protected void registerAutowire(ExtensibleModelObject model) {
+    protected void registerAutowire(Extensible model) {
         // this context only delegates autowiring
     }
 
@@ -179,7 +175,7 @@
     // ConfigurationContext methods
     // ----------------------------------
 
-    public void configure(ExtensibleModelObject model) throws ConfigurationException {
+    public void configure(Extensible model) throws ConfigurationException {
         if (configurationContext != null) {
             try {
                 configurationContext.configure(model);
@@ -190,7 +186,7 @@
         }
     }
 
-    public void build(AggregateContext parent, ExtensibleModelObject model) throws BuilderConfigException {
+    public void build(AggregateContext parent, Extensible model) throws BuilderConfigException {
         if (configurationContext != null) {
             try {
                 configurationContext.build(parent, model);

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/AbstractScopeStrategy.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/AbstractScopeStrategy.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/AbstractScopeStrategy.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/AbstractScopeStrategy.java Mon Feb 20 23:14:45 2006
@@ -13,9 +13,8 @@
  */
 package org.apache.tuscany.core.context.scope;
 
-import static org.apache.tuscany.core.context.ContextConstants.UNDEFINED_SCOPE;
-
 import org.apache.tuscany.core.context.ScopeStrategy;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Implements basic scope strategy functionality
@@ -33,13 +32,17 @@
      * @param pReferrer the scope of the component making the reference
      * @param pReferee the scope of the component being referred to
      */
-    public boolean downScopeReference(int pReferrer, int pReferee) {
-        if (pReferrer == UNDEFINED_SCOPE || pReferee == UNDEFINED_SCOPE) {
-            return false;
-        } else if ((pReferrer < 0) || (pReferee < 0)) {
+    public boolean downScopeReference(Scope pReferrer, Scope pReferee) {
+        if (pReferrer == Scope.UNDEFINED || pReferee == Scope.UNDEFINED) {
             return false;
         }
-        return (pReferrer > pReferee);
+        //FIXME Jim this does not work with enumerations, what does it mean to have a scope <0?
+//        } else if ((pReferrer < 0) || (pReferee < 0)) {
+//            return false;
+//        }
+//
+//      return (pReferrer > pReferee);
+        return pReferrer != pReferee;
     }
 
 }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/DefaultScopeStrategy.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/DefaultScopeStrategy.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/DefaultScopeStrategy.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/scope/DefaultScopeStrategy.java Mon Feb 20 23:14:45 2006
@@ -27,6 +27,7 @@
 
 import org.apache.tuscany.core.context.EventContext;
 import org.apache.tuscany.core.context.ScopeContext;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Implements a {@link org.apache.tuscany.core.context.ScopeStrategy} for the default module scopes: stateless, request, session,
@@ -39,13 +40,13 @@
     public DefaultScopeStrategy() {
     }
 
-    public Map<Integer,ScopeContext> createScopes(EventContext eventContext) {
+    public Map<Scope,ScopeContext> createScopes(EventContext eventContext) {
         ScopeContext moduleScope = new ModuleScopeContext(eventContext);
         ScopeContext sessionScope = new HttpSessionScopeContext(eventContext);
         ScopeContext requestScope = new RequestScopeContext(eventContext);
         ScopeContext statelessScope = new StatelessScopeContext(eventContext);
         ScopeContext aggregrateScope = new AggregateScopeContext(eventContext);
-        Map<Integer,ScopeContext> scopes = new HashMap();
+        Map<Scope,ScopeContext> scopes = new HashMap();
         scopes.put(MODULE_SCOPE,moduleScope);
         scopes.put(SESSION_SCOPE,sessionScope);
         scopes.put(REQUEST_SCOPE,requestScope);

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ReferenceTargetFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ReferenceTargetFactory.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ReferenceTargetFactory.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ReferenceTargetFactory.java Mon Feb 20 23:14:45 2006
@@ -57,15 +57,15 @@
         this.parentContext = parentContext;
         // targetName = reference.getReference().getName();
 
-        ConfiguredService targetService = reference.getConfiguredServices().get(0);
-        if (targetService.getPart() instanceof ExternalService) {
-            targetName = ((ExternalService) targetService.getPart()).getName();
-        } else if (targetService.getPart() instanceof Component) {
-            Component targetComponent = (Component) targetService.getPart();
+        ConfiguredService targetService = reference.getTargetConfiguredServices().get(0);
+        if (targetService.getAggregatePart() instanceof ExternalService) {
+            targetName = ((ExternalService) targetService.getAggregatePart()).getName();
+        } else if (targetService.getAggregatePart() instanceof Component) {
+            Component targetComponent = (Component) targetService.getAggregatePart();
             targetName = targetComponent.getName();
-        } else if (targetService.getPart() instanceof EntryPoint) {
-            targetName = ((EntryPoint) targetService.getPart()).getName();
-        } else if (targetService.getPart() == null) {
+        } else if (targetService.getAggregatePart() instanceof EntryPoint) {
+            targetName = ((EntryPoint) targetService.getAggregatePart()).getName();
+        } else if (targetService.getAggregatePart() == null) {
             // FIXME not correct
             if (targetService.getService() == null) {
                 throw new FactoryInitException("No target service specified");
@@ -89,7 +89,7 @@
         assert (service != null) : "Service was null";
         assert (parentContext != null) : "Parent context was null";
         interModule = true; // an external service with a reference target in another module
-        targetName = service.getPart().getName();
+        targetName = service.getAggregatePart().getName();
         targetComponentName = new QualifiedName(targetName);
         this.parentContext = parentContext;
     }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/SDOObjectFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/SDOObjectFactory.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/SDOObjectFactory.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/SDOObjectFactory.java Mon Feb 20 23:14:45 2006
@@ -1,9 +1,7 @@
 package org.apache.tuscany.core.injection;
 
-import org.apache.tuscany.core.deprecated.sdo.util.CopyHelper;
-import org.apache.tuscany.core.deprecated.sdo.util.impl.CopyHelperImpl;
-
 import commonj.sdo.DataObject;
+import commonj.sdo.helper.CopyHelper;
 
 /**
  * Creates new instances of an SDO
@@ -14,15 +12,12 @@
 
     private DataObject dataObject;
 
-    private CopyHelper helper;
-
     //----------------------------------
     // Constructors
     //----------------------------------
 
     public SDOObjectFactory(DataObject dataObject) {
         this.dataObject = dataObject;
-        helper = new CopyHelperImpl();
     }
 
     //----------------------------------
@@ -30,7 +25,7 @@
     //----------------------------------
 
     public DataObject getInstance() throws ObjectCreationException {
-        return helper.copy(dataObject);
+        return CopyHelper.INSTANCE.copy(dataObject);
     }
 
     public void releaseInstance(DataObject instance) {

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKInvocationHandler.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKInvocationHandler.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKInvocationHandler.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKInvocationHandler.java Mon Feb 20 23:14:45 2006
@@ -74,14 +74,14 @@
         } else {
             Message msg = messageFactory.createMessage();
             msg.setTargetInvoker(config.getTargetInvoker());
-            msg.setPayload(args);
+            msg.setBody(args);
             // dispatch the invocation down the chain and get the response
             Message resp = headInterceptor.invoke(msg);
 
-            Object payload = resp.getPayload();
-            if (payload instanceof Throwable)
-                throw (Throwable) payload;
-            return payload;
+            Object body = resp.getBody();
+            if (body instanceof Throwable)
+                throw (Throwable) body;
+            return body;
         }
     }
 }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKProxyFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKProxyFactory.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKProxyFactory.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/invocation/jdk/JDKProxyFactory.java Mon Feb 20 23:14:45 2006
@@ -26,9 +26,6 @@
 import org.apache.tuscany.core.invocation.ProxyConfiguration;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.invocation.spi.ProxyInitializationException;
-import org.apache.tuscany.model.types.OperationType;
-import org.apache.tuscany.model.types.java.JavaOperationType;
-import org.apache.tuscany.model.types.wsdl.WSDLOperationType;
 
 /**
  * Creates proxies for handling invocations using JDK dynamic proxies
@@ -44,25 +41,11 @@
     private ProxyConfiguration configuration;
 
     public void initialize() throws ProxyInitializationException {
-        Map<OperationType, InvocationConfiguration> invocationConfigs = configuration.getInvocationConfigurations();
+        Map<Method, InvocationConfiguration> invocationConfigs = configuration.getInvocationConfigurations();
         methodToInvocationConfig = new HashMap(invocationConfigs.size());
         for (Map.Entry entry : invocationConfigs.entrySet()) {
-            OperationType operation = (OperationType) entry.getKey();
-            if (operation instanceof JavaOperationType) {
-                JavaOperationType javaOperation = (JavaOperationType) operation;
-                Method method = javaOperation.getJavaMethod();
-                methodToInvocationConfig.put(method, (InvocationConfiguration) entry.getValue());
-            } else {
-                WSDLOperationType wsdlOperation = (WSDLOperationType) operation;
-                Method[] methods = businessInterfaceArray[0].getMethods();
-                for (int i = 0; i < methods.length; i++) {
-                    if (methods[i].getName().equals(wsdlOperation.getName())) {
-                        methodToInvocationConfig.put(methods[i], (InvocationConfiguration) entry.getValue());
-                        break;
-                    }
-                }
-            }
-
+            Method method = (Method) entry.getKey();
+            methodToInvocationConfig.put(method, (InvocationConfiguration) entry.getValue());
         }
     }
 

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/Message.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/Message.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/Message.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/Message.java Mon Feb 20 23:14:45 2006
@@ -45,19 +45,6 @@
     void setBody(Object body);
 
     /**
-     * Returns the body of the message, which will be the payload or parameters
-     * associated with the invocation
-     * FIXME what is different w/ getBody()?
-     */
-    Object getPayload();
-
-    /**
-     * Sets the body of the message
-     * FIXME what is different w/ setPayload()
-     */
-    void setPayload(Object body);
-
-    /**
      * Returns true if the message is a request message
      * FIXME is this still used?
      */

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/MessageImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/MessageImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/MessageImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/message/impl/MessageImpl.java Mon Feb 20 23:14:45 2006
@@ -16,20 +16,31 @@
  */
 package org.apache.tuscany.core.message.impl;
 
+import java.util.HashMap;
 import java.util.Map;
 
 import org.apache.tuscany.core.addressing.EndpointReference;
-import org.apache.tuscany.core.addressing.sdo.EndpointReferenceElement;
 import org.apache.tuscany.core.invocation.TargetInvoker;
 import org.apache.tuscany.core.message.Message;
 import org.apache.tuscany.core.message.channel.MessageChannel;
-import org.apache.tuscany.core.message.sdo.impl.MessageElementImpl;
 
 /**
  */
-public class MessageImpl extends MessageElementImpl implements Message, MessageChannel {
+public class MessageImpl implements Message, MessageChannel {
 
+    private String action;
+    private Object body;
+    private EndpointReference endpointReference;
+    private EndpointReference faultTo;
+    private EndpointReference from;
+    private Map<String, Object> headers;
+    private String messageID;
+    private String operationName;
     private Message relatedCallbackMessage;
+    private String relatesTo;
+    private EndpointReference replyTo;
+    private TargetInvoker invoker;
+    private EndpointReference to;
 
     /**
      * Constructor
@@ -42,175 +53,163 @@
      * @see org.apache.tuscany.core.message.Message#getAction()
      */
     public String getAction() {
-        return getHeaderFields().getAction();
+        return action;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getBody()
      */
     public Object getBody() {
-        return super.getBody();
-    }
-
-    /**
-     * @see org.apache.tuscany.core.message.Message#getPayload()
-     */
-    public Object getPayload() {
-        return super.getBody();
+        return body;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getEndpointReference()
      */
     public EndpointReference getEndpointReference() {
-        return (EndpointReference) getHeaderFields().getEndpointReference();
+        return endpointReference;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getFaultTo()
      */
     public EndpointReference getFaultTo() {
-        return (EndpointReference) getHeaderFields().getFaultTo();
+        return faultTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getFrom()
      */
     public EndpointReference getFrom() {
-        return (EndpointReference) getHeaderFields().getFrom();
+        return from;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getHeaders()
      */
     public Map<String, Object> getHeaders() {
-        return super.getHeaders();
+        if (headers==null)
+            headers=new HashMap<String, Object>();
+        return headers;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getMessageID()
      */
     public String getMessageID() {
-        return getHeaderFields().getMessageID();
+        return messageID;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getOperationName()
      */
     public String getOperationName() {
-        return super.getOperationName();
+        return operationName;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getRelatesTo()
      */
     public String getRelatesTo() {
-        return getHeaderFields().getRelatesTo();
+        return relatesTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getReplyTo()
      */
     public EndpointReference getReplyTo() {
-        return (EndpointReference) getHeaderFields().getReplyTo();
+        return replyTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#getTo()
      */
     public EndpointReference getTo() {
-        return (EndpointReference) getHeaderFields().getTo();
+        return to;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#isRequest()
      */
     public boolean isRequest() {
-        return getHeaderFields().getRelatesTo() == null;
+        return relatesTo==null;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#isResponse()
      */
     public boolean isResponse() {
-        return getHeaderFields().getRelatesTo() != null;
+        return relatesTo!=null;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setAction(java.lang.String)
      */
     public void setAction(String action) {
-        getHeaderFields().setAction(action);
+        this.action=action;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setBody(java.lang.Object)
      */
     public void setBody(Object body) {
-        super.setBody(body);
-    }
-
-    /**
-     * @see org.apache.tuscany.core.message.Message#setPayload(java.lang.Object)
-     */
-    public void setPayload(Object body) {
-        super.setBody(body);
+        this.body=body;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setEndpointReference(org.apache.tuscany.core.client.runtime.addressing.sdo.EndpointReference)
      */
     public void setEndpointReference(EndpointReference endpointReference) {
-        getHeaderFields().setEndpointReference((EndpointReferenceElement) endpointReference);
+        this.endpointReference=endpointReference;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setFaultTo(org.apache.tuscany.core.client.runtime.addressing.sdo.EndpointReference)
      */
     public void setFaultTo(EndpointReference faultTo) {
-        getHeaderFields().setFaultTo((EndpointReferenceElement) faultTo);
+        this.faultTo=faultTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setFrom(org.apache.tuscany.core.client.runtime.addressing.sdo.EndpointReference)
      */
     public void setFrom(EndpointReference from) {
-        getHeaderFields().setFrom((EndpointReferenceElement) from);
+        this.from=from;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setMessageID(java.lang.String)
      */
     public void setMessageID(String messageID) {
-        getHeaderFields().setMessageID(messageID);
+        this.messageID=messageID;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setOperationName(java.lang.String)
      */
     public void setOperationName(String operationName) {
-        super.setOperationName(operationName);
+        this.operationName=operationName;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setRelatesTo(java.lang.String)
      */
     public void setRelatesTo(String relatesTo) {
-        getHeaderFields().setRelatesTo(relatesTo);
+        this.relatesTo=relatesTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setReplyTo(org.apache.tuscany.core.client.runtime.addressing.sdo.EndpointReference)
      */
     public void setReplyTo(EndpointReference replyTo) {
-        getHeaderFields().setReplyTo((EndpointReferenceElement) replyTo);
+        this.replyTo=replyTo;
     }
 
     /**
      * @see org.apache.tuscany.core.message.Message#setTo(org.apache.tuscany.core.client.runtime.addressing.sdo.EndpointReference)
      */
     public void setTo(EndpointReference to) {
-        getHeaderFields().setTo((EndpointReferenceElement) to);
+        this.to=to;
     }
 
     /**
@@ -234,12 +233,16 @@
         return relatedCallbackMessage;
     }
     
-    private TargetInvoker invoker;
-    
+    /**
+     * @see org.apache.tuscany.core.message.Message#setTargetInvoker(org.apache.tuscany.core.invocation.TargetInvoker)
+     */
     public void setTargetInvoker(TargetInvoker invoker){
         this.invoker = invoker;
     }
 
+    /**
+     * @see org.apache.tuscany.core.message.Message#getTargetInvoker()
+     */
     public TargetInvoker getTargetInvoker(){
         return invoker;
     }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeContextImpl.java Mon Feb 20 23:14:45 2006
@@ -40,7 +40,7 @@
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.context.SystemAggregateContextImpl;
 import org.apache.tuscany.core.system.context.SystemScopeStrategy;
-import org.apache.tuscany.model.assembly.ExtensibleModelObject;
+import org.apache.tuscany.model.assembly.Extensible;
 
 /**
  * Implementation of a RuntimeContext that forms the foundation for a Tuscany environment.
@@ -155,14 +155,14 @@
         return monitorFactory;
     }
 
-    public void registerModelObject(ExtensibleModelObject model) throws ConfigurationException {
+    public void registerModelObject(Extensible model) throws ConfigurationException {
         assert (model != null) : "Model was null";
         // note do not configure or build model object since the root context will perform a call back
         rootContext.registerModelObject(model);
     }
 
-    public void registerModelObjects(List<ExtensibleModelObject> models) throws ConfigurationException {
-        for (ExtensibleModelObject model : models) {
+    public void registerModelObjects(List<Extensible> models) throws ConfigurationException {
+        for (Extensible model : models) {
             registerModelObject(model);
         }
     }
@@ -203,12 +203,12 @@
     // ConfigurationContext methods
     // ----------------------------------
 
-    public synchronized void build(AggregateContext parent, ExtensibleModelObject model) throws BuilderConfigException {
+    public synchronized void build(AggregateContext parent, Extensible model) throws BuilderConfigException {
         AssemblyVisitor visitor = new AssemblyVisitor(parent, builders);
         visitor.start(model);
     }
 
-    public void configure(ExtensibleModelObject model) throws ConfigurationException {
+    public void configure(Extensible model) throws ConfigurationException {
     }
 
     public void wire(ProxyFactory sourceFactory, ProxyFactory targetFactory, Class targetType, boolean downScope,

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeScopeStrategy.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeScopeStrategy.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeScopeStrategy.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/runtime/RuntimeScopeStrategy.java Mon Feb 20 23:14:45 2006
@@ -25,6 +25,7 @@
 import org.apache.tuscany.core.context.ScopeContext;
 import org.apache.tuscany.core.context.scope.AbstractScopeStrategy;
 import org.apache.tuscany.core.context.scope.AggregateScopeContext;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Implements a {@link org.apache.tuscany.core.context.ScopeStrategy} for a runtime context. Specifically, a runtime
@@ -37,9 +38,9 @@
     public RuntimeScopeStrategy() {
     }
 
-    public Map<Integer, ScopeContext> createScopes(EventContext eventContext) {
+    public Map<Scope, ScopeContext> createScopes(EventContext eventContext) {
         ScopeContext aggregrateScope = new AggregateScopeContext(eventContext);
-        Map<Integer, ScopeContext> scopes = new HashMap();
+        Map<Scope, ScopeContext> scopes = new HashMap();
         scopes.put(AGGREGATE_SCOPE, aggregrateScope);
         return scopes;
     }

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemAssemblyFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemAssemblyFactory.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemAssemblyFactory.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemAssemblyFactory.java Mon Feb 20 23:14:45 2006
@@ -25,13 +25,13 @@
 public interface SystemAssemblyFactory extends AssemblyFactory {
 
     /**
-     * Returns a new object of class '<em>System Implementation</em>'.
+     * Returns a new SystemImplementation.
      */
     SystemImplementation createSystemImplementation();
 
     /**
-     * Returns a new object of class '<em>System Binding</em>'.
+     * Returns a new SystemBinding.
      */
     SystemBinding createSystemBinding();
 
-} //AssemblyFactory
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemBinding.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemBinding.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemBinding.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemBinding.java Mon Feb 20 23:14:45 2006
@@ -19,7 +19,7 @@
 import org.apache.tuscany.model.assembly.Binding;
 
 /**
- * A representation of the model object '<em><b>System Binding</b></em>'.
+ * Represents a system binding.
  */
 public interface SystemBinding extends Binding {
-} // SystemBinding
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemImplementation.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemImplementation.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemImplementation.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/SystemImplementation.java Mon Feb 20 23:14:45 2006
@@ -20,18 +20,18 @@
 
 
 /**
- * A representation of the model object '<em><b>Extension Implementation</b></em>'.
+ * Represents a system component implementation.
  */
 public interface SystemImplementation extends ComponentImplementation {
 
     /**
-     * Returns the value of the '<em><b>Class</b></em>' attribute.
+     * Returns the implementation class.
      */
-    String getClass_();
+    Class getImplementationClass();
 
     /**
-     * Sets the value of the '{@link org.apache.tuscany.core.system.assembly.SystemImplementation#getClass_ <em>Class</em>}' attribute.
+     * Sets the implementation class.
      */
-    void setClass(String value);
+    void setImplementationClass(Class value);
 
-} // TExtensionImplementation
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemBindingImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemBindingImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemBindingImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemBindingImpl.java Mon Feb 20 23:14:45 2006
@@ -17,16 +17,12 @@
 package org.apache.tuscany.core.system.assembly.impl;
 
 import org.apache.tuscany.core.system.assembly.SystemBinding;
-import org.apache.tuscany.model.assembly.AssemblyModelContext;
-import org.apache.tuscany.model.assembly.AssemblyModelVisitor;
-import org.apache.tuscany.model.assembly.impl.AssemblyModelVisitorHelperImpl;
+import org.apache.tuscany.model.assembly.impl.BindingImpl;
 
 /**
- * An implementation of the model object '<em><b>System Binding</b></em>'.
+ * An implementation of SystemBinding.
  */
-public class SystemBindingImpl extends org.apache.tuscany.core.system.assembly.sdo.impl.SystemBindingImpl implements SystemBinding {
-
-    private Object runtimeConfiguration;
+public class SystemBindingImpl extends BindingImpl implements SystemBinding {
 
     /**
      * Constructor
@@ -34,51 +30,4 @@
     protected SystemBindingImpl() {
     }
 
-    /**
-     * @see org.apache.tuscany.model.assembly.Binding#setURI(java.lang.String)
-     */
-    public void setURI(String value) {
-        super.setUri(value);
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.Binding#getURI()
-     */
-    public String getURI() {
-        return super.getUri();
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.ConfiguredRuntimeObject#getRuntimeConfiguration()
-     */
-    public Object getRuntimeConfiguration() {
-        return runtimeConfiguration;
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.ConfiguredRuntimeObject#setRuntimeConfiguration(java.lang.Object)
-     */
-    public void setRuntimeConfiguration(Object configuration) {
-        this.runtimeConfiguration = configuration;
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
-     */
-    public void initialize(AssemblyModelContext modelContext) {
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#freeze()
-     */
-    public void freeze() {
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#accept(org.apache.tuscany.model.assembly.AssemblyModelVisitor)
-     */
-    public boolean accept(AssemblyModelVisitor visitor) {
-        return AssemblyModelVisitorHelperImpl.accept(this, visitor);
-    }
-
-} //TWebServiceBindingImpl
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemImplementationImpl.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemImplementationImpl.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemImplementationImpl.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/assembly/impl/SystemImplementationImpl.java Mon Feb 20 23:14:45 2006
@@ -16,147 +16,84 @@
  */
 package org.apache.tuscany.core.system.assembly.impl;
 
-import java.io.FileNotFoundException;
-import java.io.IOException;
 import java.net.URL;
-import java.security.AccessController;
-import java.security.PrivilegedActionException;
-import java.security.PrivilegedExceptionAction;
-import java.util.List;
 
-import org.osoa.sca.ServiceRuntimeException;
-
-import org.apache.tuscany.common.resource.loader.ResourceLoader;
 import org.apache.tuscany.core.system.assembly.SystemImplementation;
-import org.apache.tuscany.model.assembly.AssemblyLoader;
 import org.apache.tuscany.model.assembly.AssemblyModelContext;
-import org.apache.tuscany.model.assembly.AssemblyModelVisitor;
 import org.apache.tuscany.model.assembly.ComponentType;
-import org.apache.tuscany.model.assembly.Reference;
-import org.apache.tuscany.model.assembly.Service;
-import org.apache.tuscany.model.assembly.impl.AssemblyModelVisitorHelperImpl;
+import org.apache.tuscany.model.assembly.impl.ComponentImplementationImpl;
 
 /**
- * An implementation of the model object '<em><b>Java Implementation</b></em>'.
+ * An implementation of the SystemImplementation.
  */
-public class SystemImplementationImpl extends org.apache.tuscany.core.system.assembly.sdo.impl.SystemImplementationImpl implements SystemImplementation {
-    private ComponentType componentType;
-    private Object runtimeConfiguration;
-
-    public String getClass_() {
-        return super.getClass_();
-    }
-
-    public void setClass(String value) {
-        super.setClass(value);
-    }
-
-    public void initialize(AssemblyModelContext modelContext) {
-        ResourceLoader resourceLoader = modelContext.getResourceLoader();
-        String className = getClass_();
-
-        // Load the component type
-        AssemblyLoader assemblyLoader = modelContext.getAssemblyLoader();
-        componentType = loadComponentType(assemblyLoader, resourceLoader, className);
-        componentType.initialize(modelContext);
-    }
-
-    /**
-     * Load the component implementation class
-     *
-     */
-    private static ComponentType loadComponentType(final AssemblyLoader assemblyLoader, final ResourceLoader resourceLoader, final String className) {
-        try {
-            // SECURITY
-            return (ComponentType) AccessController.doPrivileged(new PrivilegedExceptionAction() {
-                public Object run() throws IOException {
-                    String componentTypeName = className.replace('.', '/') + ".componentType";
-                    URL url = resourceLoader.getResource(componentTypeName);
-                    if (url==null)
-                        throw new FileNotFoundException(componentTypeName);
-                    return assemblyLoader.getComponentType(url.toString());
-                }
-            });
-        } catch (PrivilegedActionException e1) {
-            throw new ServiceRuntimeException(e1.getException());
-        }
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#accept(org.apache.tuscany.model.assembly.AssemblyModelVisitor)
-     */
-    public boolean accept(AssemblyModelVisitor visitor) {
-        return AssemblyModelVisitorHelperImpl.accept(this, visitor);
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#freeze()
-     */
-    public void freeze() {
-    }
-
-    public void setComponentType(ComponentType componentType) {
-        this.componentType = componentType;
-    }
-
-    public ComponentType getComponentType() {
-        return componentType;
-    }
-
+public class SystemImplementationImpl extends ComponentImplementationImpl implements SystemImplementation {
+    
+    Class implementationClass;
+    
     /**
-     * @see org.apache.tuscany.model.assembly.ConfiguredRuntimeObject#getRuntimeConfiguration()
+     * Constructs a new SystemImplementationImpl.
      */
-    public Object getRuntimeConfiguration() {
-        return runtimeConfiguration;
+    protected SystemImplementationImpl() {
     }
 
     /**
-     * @see org.apache.tuscany.model.assembly.ConfiguredRuntimeObject#setRuntimeConfiguration(java.lang.Object)
+     * @see org.apache.tuscany.core.system.assembly.SystemImplementation#getImplementationClass()
      */
-    public void setRuntimeConfiguration(Object configuration) {
-        this.runtimeConfiguration = configuration;
+    public Class getImplementationClass() {
+        return implementationClass;
     }
-
+    
     /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getProperties()
+     * @see org.apache.tuscany.core.system.assembly.SystemImplementation#setImplementationClass(java.lang.Class)
      */
-    public List<org.apache.tuscany.model.assembly.Property> getProperties() {
-        return componentType.getProperties();
+    public void setImplementationClass(Class value) {
+        checkNotFrozen();
+        implementationClass=value;
     }
-
+    
     /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getProperty(java.lang.String)
+     * @see org.apache.tuscany.model.assembly.AssemblyModelObject#initialize(org.apache.tuscany.model.assembly.AssemblyModelContext)
      */
-    public org.apache.tuscany.model.assembly.Property getProperty(String name) {
-        return componentType.getProperty(name);
-    }
-
-    /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getReference(java.lang.String)
-     */
-    public Reference getReference(String name) {
-        return componentType.getReference(name);
-    }
+    public void initialize(AssemblyModelContext modelContext) {
+        if (isInitialized())
+            return;
 
-    /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getReferences()
-     */
-    public List<Reference> getReferences() {
-        return componentType.getReferences();
+        // Initialize the component type
+        ComponentType componentType=getComponentType();
+        if (componentType==null) {
+            componentType=createComponentType(modelContext, implementationClass);
+            setComponentType(componentType);
+        }
+        
+        super.initialize(modelContext);
     }
 
     /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getService(java.lang.String)
+     * Create the component type
+     * @param modelContext
+     * @param implementationClass
      */
-    public Service getService(String name) {
-        return componentType.getService(name);
+    private ComponentType createComponentType(AssemblyModelContext modelContext, Class implementationClass) {
+        String baseName = getBaseName(implementationClass);
+        URL componentTypeFile = implementationClass.getResource(baseName + ".componentType");
+        if (componentTypeFile != null) {
+            return modelContext.getAssemblyLoader().getComponentType(componentTypeFile.toString());
+        } else
+            return null;
     }
 
     /**
-     * @see org.apache.tuscany.model.assembly.ComponentType#getServices()
+     * Returns the simple name of a class - i.e. the class name devoid of its package qualifier
+     * @param implClass
+     * @return
      */
-    public List<Service> getServices() {
-        return componentType.getServices();
+    private String getBaseName(Class implClass) {
+        String baseName = implClass.getName();
+        int lastDot = baseName.lastIndexOf('.');
+        if (lastDot != -1) {
+            baseName = baseName.substring(lastDot + 1);
+        }
+        return baseName;
     }
 
-} //TExtensionImplementationImpl
+}

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentContextBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentContextBuilder.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentContextBuilder.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentContextBuilder.java Mon Feb 20 23:14:45 2006
@@ -40,18 +40,18 @@
 import org.apache.tuscany.core.injection.ReferenceTargetFactory;
 import org.apache.tuscany.core.injection.SDOObjectFactory;
 import org.apache.tuscany.core.injection.SingletonObjectFactory;
+import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.core.system.annotation.Autowire;
 import org.apache.tuscany.core.system.annotation.ParentContext;
 import org.apache.tuscany.core.system.assembly.SystemImplementation;
 import org.apache.tuscany.core.system.config.SystemComponentRuntimeConfiguration;
-import org.apache.tuscany.core.runtime.RuntimeContext;
 import org.apache.tuscany.model.assembly.AssemblyModelObject;
 import org.apache.tuscany.model.assembly.Component;
 import org.apache.tuscany.model.assembly.ConfiguredProperty;
 import org.apache.tuscany.model.assembly.ConfiguredReference;
 import org.apache.tuscany.model.assembly.ConfiguredService;
 import org.apache.tuscany.model.assembly.ModuleComponent;
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
 import org.osoa.sca.annotations.ComponentName;
 import org.osoa.sca.annotations.Context;
 import org.osoa.sca.annotations.Destroy;
@@ -86,12 +86,12 @@
                 && component.getComponentImplementation().getRuntimeConfiguration() == null) {
             SystemImplementation javaImpl = (SystemImplementation) component.getComponentImplementation();
             // FIXME scope
-            ScopeEnum scope = component.getComponentImplementation().getServices().get(0).getInterfaceContract().getScope();
+            Scope scope = component.getComponentImplementation().getComponentType().getServices().get(0).getServiceContract().getScope();
             Class implClass = null;
             Set<Field> fields;
             Set<Method> methods;
             try {
-                implClass = JavaIntrospectionHelper.loadClass(javaImpl.getClass_());
+                implClass = javaImpl.getImplementationClass();
                 fields = JavaIntrospectionHelper.getAllFields(implClass);
                 methods = JavaIntrospectionHelper.getAllUniqueMethods(implClass);
                 String name = component.getName();
@@ -251,14 +251,12 @@
                 // decorate the logical model
                 SystemComponentRuntimeConfiguration config = new SystemComponentRuntimeConfiguration(name,
                         JavaIntrospectionHelper.getDefaultConstructor(implClass), injectors, eagerInit, initInvoker,
-                        destroyInvoker, scope.getValue());
+                        destroyInvoker, scope);
                 component.getComponentImplementation().setRuntimeConfiguration(config);
             } catch (BuilderConfigException e) {
                 e.addContextName(component.getName());
                 e.addContextName(parentContext.getName());
                 throw e;
-            } catch (ClassNotFoundException e) {
-                throw new BuilderConfigException(e);
             } catch (NoSuchMethodException e) {
                 BuilderConfigException ce = new BuilderConfigException("Class does not have a no-arg constructor", e);
                 ce.setIdentifier(implClass.getName());
@@ -321,12 +319,12 @@
     private Injector createReferenceInjector(String moduleName, String componentName, AggregateContext parentContext, ConfiguredReference reference,
                                              Set<Field> fields, Set<Method> methods) throws NoAccessorException, BuilderConfigException {
         String refName = reference.getReference().getName();
-        List<ConfiguredService> services = reference.getConfiguredServices();
+        List<ConfiguredService> services = reference.getTargetConfiguredServices();
         Class type;
         // FIXME added the size check - do we need to do this?
         if (services.size() == 1) {
             // get the interface
-            type = reference.getReference().getInterfaceContract().getInterfaceType().getInstanceClass();
+            type = reference.getReference().getServiceContract().getInterface();
         } else {
             // FIXME do we support arrays?
             type = List.class;

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemExternalServiceBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemExternalServiceBuilder.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemExternalServiceBuilder.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/builder/SystemExternalServiceBuilder.java Mon Feb 20 23:14:45 2006
@@ -54,13 +54,13 @@
             return;
         }
 
-        if (externalService.getConfiguredService() != null && externalService.getConfiguredService().getPart() != null) {
+        if (externalService.getConfiguredService() != null && externalService.getConfiguredService().getAggregatePart() != null) {
             SystemExternalServiceRuntimeConfiguration config = new SystemExternalServiceRuntimeConfiguration(externalService
                     .getName(), new ReferenceTargetFactory(externalService.getConfiguredService(), context));
             externalService.getConfiguredService().setRuntimeConfiguration(config);
-        } else if (externalService.getInterfaceContract().getInterfaceType() != null) {
+        } else if (externalService.getConfiguredService().getService().getServiceContract().getInterface() != null) {
             // autowire
-            Class<?> claz = externalService.getInterfaceContract().getInterfaceType().getInstanceClass();
+            Class<?> claz = externalService.getConfiguredService().getService().getServiceContract().getInterface();
             if (claz == null) {
                 BuilderException e = new BuilderConfigException("Interface type not specified");
                 e.setIdentifier(externalService.getName());

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemComponentRuntimeConfiguration.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemComponentRuntimeConfiguration.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemComponentRuntimeConfiguration.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemComponentRuntimeConfiguration.java Mon Feb 20 23:14:45 2006
@@ -13,7 +13,7 @@
 import org.apache.tuscany.core.injection.PojoObjectFactory;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.context.SystemComponentContext;
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * A RuntimeConfiguration that handles system component implementation types
@@ -41,7 +41,7 @@
     private EventInvoker destroy;
 
     // the scope of the implementation instance
-    private int scope;
+    private Scope scope;
 
     // if the component implementation scope is stateless 
     private boolean stateless;
@@ -68,7 +68,7 @@
      * @param scope the scope of the component implementation type
      */
     public SystemComponentRuntimeConfiguration(String name, Constructor ctr, List<Injector> setters, boolean eagerInit,
-            EventInvoker init, EventInvoker destroy, int scope) {
+            EventInvoker init, EventInvoker destroy, Scope scope) {
         assert (name != null) : "Name was null";
         assert (ctr != null) : "Constructor was null";
         assert (setters != null) : "Setters were null";
@@ -80,7 +80,7 @@
         this.init = init;
         this.destroy = destroy;
         this.scope = scope;
-        stateless = (scope == ScopeEnum.INSTANCE);
+        stateless = (scope == Scope.INSTANCE);
     }
 
     // ----------------------------------
@@ -91,7 +91,7 @@
         return name;
     }
 
-    public int getScope() {
+    public Scope getScope() {
         return scope;
     }
 

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointRuntimeConfiguration.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointRuntimeConfiguration.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointRuntimeConfiguration.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointRuntimeConfiguration.java Mon Feb 20 23:14:45 2006
@@ -21,7 +21,7 @@
 import org.apache.tuscany.core.injection.ObjectFactory;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.context.SystemEntryPointContext;
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Creates {@link SystemEntryPointContext} instances based on an entry point configuration in an assembly model
@@ -53,8 +53,8 @@
         return new SystemEntryPointContext(name, factory);
     }
 
-    public int getScope() {
-        return ScopeEnum.MODULE;
+    public Scope getScope() {
+        return Scope.MODULE;
     }
 
     public String getName() {

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceRuntimeConfiguration.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceRuntimeConfiguration.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceRuntimeConfiguration.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceRuntimeConfiguration.java Mon Feb 20 23:14:45 2006
@@ -21,7 +21,7 @@
 import org.apache.tuscany.core.injection.ObjectFactory;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.context.SystemExternalServiceContext;
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * Creates system type external service contexts
@@ -54,8 +54,8 @@
     // Methods
     // ----------------------------------
 
-    public int getScope() {
-        return ScopeEnum.MODULE;
+    public Scope getScope() {
+        return Scope.MODULE;
     }
 
     public String getName() {

Modified: incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectRuntimeConfiguration.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectRuntimeConfiguration.java?rev=379382&r1=379381&r2=379382&view=diff
==============================================================================
--- incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectRuntimeConfiguration.java (original)
+++ incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectRuntimeConfiguration.java Mon Feb 20 23:14:45 2006
@@ -26,7 +26,7 @@
 import org.apache.tuscany.core.injection.SingletonObjectFactory;
 import org.apache.tuscany.core.invocation.spi.ProxyFactory;
 import org.apache.tuscany.core.system.context.SystemComponentContext;
-import org.apache.tuscany.model.assembly.ScopeEnum;
+import org.apache.tuscany.model.assembly.Scope;
 
 /**
  * A RuntimeConfiguration that contains the configuration needed to convert a simple
@@ -54,8 +54,8 @@
         return new SystemComponentContext(name, objectFactory, false, null, null, false);
     }
 
-    public int getScope() {
-        return ScopeEnum.MODULE;
+    public Scope getScope() {
+        return Scope.MODULE;
     }
 
     public String getName() {