You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2006/12/23 13:14:11 UTC

svn commit: r489888 [1/6] - in /incubator/tuscany/java/sca: kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/ kernel/core/src/main/java/org/apache/tuscany/core/builder/ kernel/core/src/main/java/org/apache/tuscany/core/component/scope/ kerne...

Author: jmarino
Date: Sat Dec 23 04:14:05 2006
New Revision: 489888

URL: http://svn.apache.org/viewvc?view=rev&rev=489888
Log:
start core cleanup: externalize proxy generation to clients; eliminate need for system wires

Added:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/WireObjectFactory.java   (contents, props changed)
      - copied, changed from r489552, incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemWireObjectFactory.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/injection/InvalidResourceTypeException.java   (with props)
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/wire/LoopBackWire.java   (with props)
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/TestUtils.java   (with props)
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/AutowireRegistrationTestCase.java   (with props)
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/WireObjectFactoryTestCase.java   (contents, props changed)
      - copied, changed from r489552, incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/SystemWireObjectFactoryTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/launcher/
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/launcher/CompositeContextImplTestCase.java   (with props)
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/InvalidAutowireInterface.java   (with props)
    incubator/tuscany/java/sca/services/persistence/openjpa/src/main/java/org/apache/tuscany/service/openjpa/EntityManagerFactoryNotConfiguredException.java   (with props)
Removed:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemWireObjectFactory.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/wire/
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/GetServiceByNameTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/SystemWireObjectFactoryTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/wire/
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/SystemBuilderWireTestCase.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/SystemAtomicComponent.java
Modified:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultBootstrapper.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultRuntime.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/BuilderRegistryImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/ConnectorImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/HttpSessionScopeContainer.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoAtomicComponent.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/AbstractCompositeComponent.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeService.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaAtomicComponent.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ConversationProcessor.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ImplementationProcessorServiceImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilder.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilder.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemReferenceImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemServiceImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemSingletonAtomicComponent.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/injection/PojoObjectFactory.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/injection/ResourceObjectFactory.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/launcher/CompositeContextImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/launcher/LauncherImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/loader/ComponentLoader.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/wire/InboundWireImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/wire/OutboundWireImpl.java
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKWireService.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/builder/ConnectorImplTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/BasicCompositeScopeTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/BasicConversationalScopeTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/BasicHttpSessionScopeTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/BasicRequestScopeTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/BasicStatelessScopeTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/CompositeScopeInstanceLifecycleTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/CompositeScopeRestartTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeInstanceLifecycleTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeRestartTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/HttpSessionScopeInstanceLifecycleTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/HttpSessionScopeRestartTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/MockFactory.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeInstanceLifecycleTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/RequestScopeRestartTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/scope/WorkContextTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/PassByValueWirePostProcessorTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/AutowireResolutionTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/AutowireTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeBuilderTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplBasicTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplSystemWireTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentResolutionTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeLifecycleTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositePropagationTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeReferenceCallbackTargetInvokerTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeReferenceTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/DuplicateRegistrationTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/composite/JavaObjectRegistrationTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/JavaComponentBuilderReferenceTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/JavaComponentBuilderResourceTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/JavaReferenceWireTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/ResourceInjectionTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/java/integration/CallbackInvocationTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/processor/HeuristicPojoProcessorTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/processor/ServiceCallbackTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/processor/ServiceProcessorTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilderTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilderResourceTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilderTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentWireInvocationTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/component/SystemServiceComponentWireTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/implementation/system/loader/SystemComponentTypeLoaderTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/injection/ResourceObjectFactoryTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/scope/ScopeReferenceTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/wire/DifferentInterfaceWireTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/wire/ReferenceInjectionTestCase.java
    incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/ComponentLoaderTestCase.java
    incubator/tuscany/java/sca/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime/InitializationException.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/bootstrap/ComponentNames.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/AtomicComponent.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Component.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/CompositeComponent.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/SCAObject.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/component/Service.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/CompositeComponentExtension.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceExtension.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceExtension.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/SystemAtomicComponentExtension.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/implementation/java/ImplementationProcessorService.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/OutboundWire.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireObjectFactory.java
    incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireService.java
    incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/component/AbstractSCAObjectTestCase.java
    incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/AtomicComponentExtensionTestCase.java
    incubator/tuscany/java/sca/plugins/plugin.itest/src/main/java/org/apache/tuscany/sca/plugin/itest/MavenEmbeddedRuntime.java
    incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiService.java
    incubator/tuscany/java/sca/runtime/standalone/standalone-host/src/main/java/org/apache/tuscany/runtime/standalone/host/StandaloneRuntimeImpl.java
    incubator/tuscany/java/sca/runtime/webapp/webapp-host/src/main/java/org/apache/tuscany/runtime/webapp/WebappRuntimeImpl.java
    incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixService.java
    incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/io/SCAServerDataBindingCallback.java
    incubator/tuscany/java/sca/services/bindings/binding.celtix/src/test/java/org/apache/tuscany/binding/celtix/CeltixServiceTestCase.java
    incubator/tuscany/java/sca/services/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/JSONRPCBindingBuilder.java
    incubator/tuscany/java/sca/services/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/JSONRPCService.java
    incubator/tuscany/java/sca/services/bindings/binding.jsonrpc/src/test/java/org/apache/tuscany/binding/jsonrpc/JSONRPCBindingBuilderTestCase.java
    incubator/tuscany/java/sca/services/bindings/binding.jsonrpc/src/test/java/org/apache/tuscany/binding/jsonrpc/JSONRPCServiceTestCase.java
    incubator/tuscany/java/sca/services/containers/container.groovy/src/main/java/org/apache/tuscany/container/groovy/GroovyAtomicComponent.java
    incubator/tuscany/java/sca/services/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/PropertyTestCase.java
    incubator/tuscany/java/sca/services/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/ScriptInvokeTestCase.java
    incubator/tuscany/java/sca/services/containers/container.groovy/src/test/java/org/apache/tuscany/container/groovy/WireTestCase.java
    incubator/tuscany/java/sca/services/containers/container.javascript/src/main/java/org/apache/tuscany/container/javascript/JavaScriptComponent.java
    incubator/tuscany/java/sca/services/containers/container.javascript/src/main/java/org/apache/tuscany/container/javascript/JavaScriptIntrospector.java
    incubator/tuscany/java/sca/services/containers/container.javascript/src/test/java/org/apache/tuscany/container/javascript/WireTestCase.java
    incubator/tuscany/java/sca/services/containers/container.javascript/src/test/resources/org/apache/tuscany/container/javascript/function/HelloWorld.componentType
    incubator/tuscany/java/sca/services/containers/container.javascript/src/test/resources/org/apache/tuscany/container/javascript/function/e4x.componentType
    incubator/tuscany/java/sca/services/containers/container.javascript/src/test/resources/org/apache/tuscany/container/javascript/function/propertyTest.componentType
    incubator/tuscany/java/sca/services/containers/container.ruby/src/main/java/org/apache/tuscany/container/ruby/RubyComponent.java
    incubator/tuscany/java/sca/services/containers/container.ruby/src/main/java/org/apache/tuscany/container/ruby/RubyIntrospector.java
    incubator/tuscany/java/sca/services/containers/container.ruby/src/test/java/org/apache/tuscany/container/ruby/WireTestCase.java
    incubator/tuscany/java/sca/services/containers/container.ruby/src/test/resources/org/apache/tuscany/container/ruby/function/HelloWorld.componentType
    incubator/tuscany/java/sca/services/containers/container.ruby/src/test/resources/org/apache/tuscany/container/ruby/function/propertyTest.componentType
    incubator/tuscany/java/sca/services/containers/container.script/src/main/java/org/apache/tuscany/container/script/ScriptComponent.java
    incubator/tuscany/java/sca/services/containers/container.script/src/test/java/org/apache/tuscany/container/script/ScriptComponentTestCase.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilder.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeComponent.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringInvoker.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ReferenceInvocationTestCase.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ServiceInvocationTestCase.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilderTestCase.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/SpringInvocationTestCase.java
    incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/integration/BootstrapTestCase.java
    incubator/tuscany/java/sca/services/persistence/common/src/main/java/org/apache/tuscany/service/persistence/common/PersistenceUnitProcessor.java
    incubator/tuscany/java/sca/services/persistence/common/src/test/java/org/apache/tuscany/service/persistence/common/PersistenceUnitTestCase.java
    incubator/tuscany/java/sca/services/persistence/datasource/src/test/java/org/apache/tuscany/persistence/datasource/integration/DHCPBootstrapTestCase.java
    incubator/tuscany/java/sca/services/persistence/datasource/src/test/java/org/apache/tuscany/persistence/datasource/integration/ProviderBootstrapTestCase.java
    incubator/tuscany/java/sca/services/persistence/openjpa/src/main/java/org/apache/tuscany/service/openjpa/EntityManagerProcessor.java
    incubator/tuscany/java/sca/services/persistence/openjpa/src/test/java/org/apache/tuscany/service/openjpa/EntityManagerProcessorTestCase.java
    incubator/tuscany/java/sca/services/persistence/store.journal/src/test/java/org/apache/tuscany/persistence/store/journal/performance/MockSCAObject.java
    incubator/tuscany/java/sca/services/transaction/transaction.geronimo/src/test/java/org/apache/tuscany/transaction/geronimo/jta/integration/BootstrapTestCase.java
    incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/SCATestCase.java

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultBootstrapper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultBootstrapper.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultBootstrapper.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultBootstrapper.java Sat Dec 23 04:14:05 2006
@@ -23,7 +23,6 @@
 import org.apache.tuscany.spi.bootstrap.ComponentNames;
 import org.apache.tuscany.spi.bootstrap.RuntimeComponent;
 import org.apache.tuscany.spi.builder.Builder;
-import org.apache.tuscany.spi.builder.BuilderRegistry;
 import org.apache.tuscany.spi.builder.Connector;
 import org.apache.tuscany.spi.component.CompositeComponent;
 import org.apache.tuscany.spi.component.ScopeContainerMonitor;
@@ -77,6 +76,7 @@
 import org.apache.tuscany.core.loader.ReferenceLoader;
 import org.apache.tuscany.core.loader.ServiceLoader;
 import org.apache.tuscany.core.property.PropertyObjectFactoryImpl;
+import org.apache.tuscany.core.wire.jdk.JDKWireService;
 import org.apache.tuscany.host.MonitorFactory;
 
 /**
@@ -240,7 +240,8 @@
      * @return a new Builder
      */
     private Builder createBuilder(ScopeRegistry scopeRegistry) {
-        BuilderRegistry builderRegistry = new BuilderRegistryImpl(scopeRegistry);
+        BuilderRegistryImpl builderRegistry = new BuilderRegistryImpl(scopeRegistry);
+        builderRegistry.setWireService(new JDKWireService());
         SystemCompositeBuilder builder = new SystemCompositeBuilder(builderRegistry, createConnector());
         builderRegistry.register(SystemCompositeImplementation.class, builder);
         builderRegistry.register(SystemImplementation.class, new SystemComponentBuilder());

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultRuntime.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultRuntime.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultRuntime.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/bootstrap/DefaultRuntime.java Sat Dec 23 04:14:05 2006
@@ -28,6 +28,7 @@
 import org.apache.tuscany.spi.component.CompositeComponent;
 import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.deployer.Deployer;
+import org.apache.tuscany.spi.wire.InboundWire;
 
 import org.apache.tuscany.core.implementation.composite.CompositeComponentImpl;
 
@@ -73,6 +74,10 @@
     }
 
     public Deployer getDeployer() throws TargetResolutionException {
-        return systemComponent.resolveExternalInstance(Deployer.class);
+        InboundWire wire = systemComponent.resolveExternalAutowire(Deployer.class);
+        if (wire != null) {
+            return (Deployer) wire.getTargetService();
+        }
+        return null;
     }
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/BuilderRegistryImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/BuilderRegistryImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/BuilderRegistryImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/BuilderRegistryImpl.java Sat Dec 23 04:14:05 2006
@@ -38,7 +38,6 @@
 import org.apache.tuscany.spi.component.SCAObject;
 import org.apache.tuscany.spi.component.ScopeRegistry;
 import org.apache.tuscany.spi.component.Service;
-import org.apache.tuscany.spi.component.SystemAtomicComponent;
 import org.apache.tuscany.spi.deployer.DeploymentContext;
 import org.apache.tuscany.spi.model.Binding;
 import org.apache.tuscany.spi.model.BindlessServiceDefinition;
@@ -51,8 +50,6 @@
 import org.apache.tuscany.spi.model.ServiceContract;
 import org.apache.tuscany.spi.wire.WireService;
 
-import org.apache.tuscany.core.implementation.system.component.SystemService;
-
 /**
  * The default builder registry in the runtime
  *
@@ -142,13 +139,12 @@
             ComponentType<?, ?, ?> componentType = componentDefinition.getImplementation().getComponentType();
             assert componentType != null : "Component type must be set";
             // create wires for the component
-            if (wireService != null && !(component instanceof SystemAtomicComponent)) {
+            if (wireService != null) {
                 wireService.createWires(component, componentDefinition);
             }
             return component;
         } catch (BuilderException e) {
             e.addContextName(componentDefinition.getName());
-//            e.addContextName(parent.getName());
             throw e;
         }
     }
@@ -163,7 +159,7 @@
             throw new NoRegisteredBuilderException("No builder registered for type", bindingClass.getName());
         }
         SCAObject object = bindingBuilder.build(parent, boundServiceDefinition, deploymentContext);
-        if (wireService != null && !(object instanceof SystemService)) {
+        if (wireService != null) {
             String path = boundServiceDefinition.getTarget().getPath();
             ServiceContract<?> contract = boundServiceDefinition.getServiceContract();
             wireService.createWires((Service) object, path, contract);

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/ConnectorImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/ConnectorImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/ConnectorImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/builder/ConnectorImpl.java Sat Dec 23 04:14:05 2006
@@ -34,7 +34,9 @@
 import org.apache.tuscany.spi.component.SCAObject;
 import org.apache.tuscany.spi.component.Service;
 import org.apache.tuscany.spi.component.TargetInvokerCreationException;
+import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.component.WorkContext;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.Scope;
 import org.apache.tuscany.spi.model.ServiceContract;
@@ -51,8 +53,8 @@
 
 import org.apache.tuscany.core.implementation.composite.CompositeReference;
 import org.apache.tuscany.core.implementation.composite.CompositeService;
+import org.apache.tuscany.core.wire.LoopBackWire;
 import org.apache.tuscany.core.wire.NonBlockingBridgingInterceptor;
-import org.apache.tuscany.core.wire.OutboundAutowire;
 import org.apache.tuscany.core.wire.SynchronousBridgingInterceptor;
 
 /**
@@ -69,7 +71,7 @@
     public ConnectorImpl() {
     }
 
-    @Constructor({"wireService", "processorRegistry", "scheduler", "workContext"})
+    @Constructor
     public ConnectorImpl(@Autowire WireService wireService,
                          @Autowire WirePostProcessorRegistry processorRegistry,
                          @Autowire WorkScheduler scheduler,
@@ -81,108 +83,12 @@
     }
 
     public void connect(SCAObject source) throws WiringException {
-        CompositeComponent parent = source.getParent();
         if (source instanceof AtomicComponent) {
-            AtomicComponent sourceComponent = (AtomicComponent) source;
-            // connect outbound wires for component references to their targets
-            for (List<OutboundWire> referenceWires : sourceComponent.getOutboundWires().values()) {
-                for (OutboundWire outboundWire : referenceWires) {
-                    if (outboundWire instanceof OutboundAutowire) {
-                        continue;
-                    }
-                    try {
-                        SCAObject target;
-                        if (sourceComponent.isSystem()) {
-                            target = parent.getSystemChild(outboundWire.getTargetName().getPartName());
-                        } else {
-                            target = parent.getChild(outboundWire.getTargetName().getPartName());
-                        }
-                        connect(sourceComponent, outboundWire, target);
-                    } catch (WiringException e) {
-                        e.addContextName(source.getName());
-                        e.addContextName(parent.getName());
-                        throw e;
-                    }
-                }
-            }
-            // connect inbound wires
-            for (InboundWire inboundWire : sourceComponent.getInboundWires().values()) {
-                for (InboundInvocationChain chain : inboundWire.getInvocationChains().values()) {
-                    Operation<?> operation = chain.getOperation();
-                    String serviceName = inboundWire.getServiceName();
-                    TargetInvoker invoker;
-                    try {
-                        invoker = sourceComponent.createTargetInvoker(serviceName, operation, null);
-                    } catch (TargetInvokerCreationException e) {
-                        String targetName = inboundWire.getContainer().getName();
-                        throw new WireConnectException("Error processing inbound wire",
-                            null,
-                            null,
-                            targetName,
-                            serviceName,
-                            e);
-                    }
-                    chain.setTargetInvoker(invoker);
-                    chain.prepare();
-                }
-            }
+            handleAtomic((AtomicComponent) source);
         } else if (source instanceof Reference) {
-            Reference reference = (Reference) source;
-            InboundWire inboundWire = reference.getInboundWire();
-            Map<Operation<?>, InboundInvocationChain> inboundChains = inboundWire.getInvocationChains();
-            for (InboundInvocationChain chain : inboundChains.values()) {
-                //TODO handle async
-                // add target invoker on inbound side
-                ServiceContract contract = inboundWire.getServiceContract();
-                Operation operation = chain.getOperation();
-                TargetInvoker invoker;
-                try {
-                    invoker = reference.createTargetInvoker(contract, operation);
-                } catch (TargetInvokerCreationException e) {
-                    String targetName = inboundWire.getContainer().getName();
-                    throw new WireConnectException("Error processing inbound wire",
-                        null,
-                        null,
-                        targetName,
-                        null,
-                        e);
-                }
-                chain.setTargetInvoker(invoker);
-                chain.prepare();
-            }
-            OutboundWire outboundWire = reference.getOutboundWire();
-            // connect the reference's inbound and outbound wires
-            connect(inboundWire, outboundWire, true);
-
-            if (reference instanceof CompositeReference) {
-                // For a composite reference only, since its outbound wire comes
-                // from its parent composite,
-                // the corresponding target would not lie in its parent but
-                // rather in its parent's parent
-                parent = parent.getParent();
-                assert parent != null : "Parent of parent was null";
-                SCAObject target = parent.getChild(outboundWire.getTargetName().getPartName());
-                connect((Component) parent, outboundWire, target);
-            }
+            handleReference((Reference) source);
         } else if (source instanceof Service) {
-            Service service = (Service) source;
-            InboundWire inboundWire = service.getInboundWire();
-            OutboundWire outboundWire = service.getOutboundWire();
-            // For a composite reference only, since its outbound wire comes from its parent composite,
-            // the corresponding target would not lie in its parent but rather in its parent's parent
-            SCAObject target;
-            if (service.isSystem()) {
-                target = parent.getSystemChild(outboundWire.getTargetName().getPartName());
-            } else {
-                target = parent.getChild(outboundWire.getTargetName().getPartName());
-            }
-            // connect the outbound service wire to the target
-            connect(service, outboundWire, target);
-            // NB: this connect must be done after the outbound service chain is connected to its target above
-            if (!(source instanceof CompositeService)) {
-                //REVIEW JFM: do we need this to be special for composites?
-                connect(inboundWire, outboundWire, true);
-            }
+            handleService((Service) source);
         }
     }
 
@@ -197,12 +103,15 @@
                 postProcessorRegistry.process(sourceWire, targetWire);
             }
             return;
+        } else if (optimizable && sourceWire.getContainer().isSystem() && targetWire.getContainer().isSystem()) {
+            // JFM FIXME test this
+            sourceWire.setTargetWire(targetWire);
+            return;
         }
         for (InboundInvocationChain inboundChain : sourceWire.getInvocationChains().values()) {
             // match wire chains
             OutboundInvocationChain outboundChain = targetChains.get(inboundChain.getOperation());
             if (outboundChain == null) {
-                // FIXME JFM    -------
                 String serviceName = sourceWire.getServiceName();
                 String sourceName = sourceWire.getContainer().getName();
                 String refName = targetWire.getReferenceName();
@@ -245,6 +154,10 @@
                 postProcessorRegistry.process(sourceWire, targetWire);
             }
             return;
+        } else if (optimizable && sourceWire.getContainer().isSystem() && targetWire.getContainer().isSystem()) {
+            // JFM FIXME test this
+            sourceWire.setTargetWire(targetWire);
+            return;
         }
         // match outbound to inbound chains
         for (OutboundInvocationChain outboundChain : sourceWire.getInvocationChains().values()) {
@@ -279,7 +192,11 @@
             TargetInvoker invoker = null;
             if (target instanceof Component) {
                 Component component = (Component) target;
-                String portName = sourceWire.getTargetName().getPortName();
+                QualifiedName wireTargetName = sourceWire.getTargetName();
+                String portName = null;
+                if (wireTargetName != null) {
+                    portName = wireTargetName.getPortName();
+                }
                 try {
                     invoker = component.createTargetInvoker(portName, inboundOperation, targetWire);
                 } catch (TargetInvokerCreationException e) {
@@ -307,13 +224,13 @@
                 invoker = compServ.createTargetInvoker(targetWire.getServiceContract(), inboundChain.getOperation());
             }
 
-            if (source instanceof Service && !(source instanceof CompositeService)) {
+            if (source instanceof Service) { //&& !(source instanceof CompositeService)) {
                 // services are a special case: invoker must go on the inbound chain
                 if (target instanceof Component && (isOneWayOperation || operationHasCallback)) {
                     // if the target is a component and the operation is non-blocking
-                    connect(outboundChain, inboundChain, null, true);
+                    connect(outboundChain, inboundChain, invoker, true);
                 } else {
-                    connect(outboundChain, inboundChain, null, false);
+                    connect(outboundChain, inboundChain, invoker, false);
                 }
                 Service service = (Service) source;
                 InboundInvocationChain chain = service.getInboundWire().getInvocationChains().get(operation);
@@ -420,8 +337,8 @@
     /**
      * Connects an inbound source chain to an outbound target chain
      *
-     * @param sourceChain
-     * @param targetChain
+     * @param sourceChain the source chain to connect
+     * @param targetChain the target chain to connect
      */
     void connect(InboundInvocationChain sourceChain, OutboundInvocationChain targetChain) {
         // invocations from inbound to outbound chains are always syncrhonius as they occur in services and references
@@ -429,10 +346,185 @@
     }
 
     /**
+     * Connects wires for a service
+     *
+     * @param service the service
+     * @throws WiringException
+     */
+    private void handleService(Service service) throws WiringException {
+        CompositeComponent parent = service.getParent();
+        InboundWire inboundWire = service.getInboundWire();
+        OutboundWire outboundWire = service.getOutboundWire();
+        // For a composite reference only, since its outbound wire comes from its parent composite,
+        // the corresponding target would not lie in its parent but rather in its parent's parent
+        SCAObject target;
+        if (service.isSystem()) {
+            target = parent.getSystemChild(outboundWire.getTargetName().getPartName());
+        } else {
+            target = parent.getChild(outboundWire.getTargetName().getPartName());
+        }
+        // connect the outbound service wire to the target
+        connect(service, outboundWire, target);
+        // NB: this connect must be done after the outbound service chain is connected to its target above
+        // if (!(service instanceof CompositeService)) {
+        //REVIEW JFM: do we need this to be special for composites?
+        connect(inboundWire, outboundWire, true);
+        // }
+    }
+
+    private void handleReference(Reference reference) throws WiringException {
+        CompositeComponent parent = reference.getParent();
+        InboundWire inboundWire = reference.getInboundWire();
+        Map<Operation<?>, InboundInvocationChain> inboundChains = inboundWire.getInvocationChains();
+        for (InboundInvocationChain chain : inboundChains.values()) {
+            //TODO handle async
+            // add target invoker on inbound side
+            ServiceContract contract = inboundWire.getServiceContract();
+            Operation operation = chain.getOperation();
+            TargetInvoker invoker;
+            try {
+                invoker = reference.createTargetInvoker(contract, operation);
+            } catch (TargetInvokerCreationException e) {
+                String targetName = inboundWire.getContainer().getName();
+                throw new WireConnectException("Error processing inbound wire",
+                    null,
+                    null,
+                    targetName,
+                    null,
+                    e);
+            }
+            chain.setTargetInvoker(invoker);
+            chain.prepare();
+        }
+        OutboundWire outboundWire = reference.getOutboundWire();
+        // connect the reference's inbound and outbound wires
+        connect(inboundWire, outboundWire, true);
+
+        if (reference instanceof CompositeReference) {
+            // For a composite reference only, since its outbound wire comes
+            // from its parent composite,
+            // the corresponding target would not lie in its parent but
+            // rather in its parent's parent
+            parent = parent.getParent();
+            assert parent != null : "Parent of parent was null";
+            SCAObject target = parent.getChild(outboundWire.getTargetName().getPartName());
+            connect(parent, outboundWire, target);
+        }
+    }
+
+    private void handleAtomic(AtomicComponent sourceComponent) throws WiringException {
+        CompositeComponent parent = sourceComponent.getParent();
+        // connect outbound wires for component references to their targets
+        for (List<OutboundWire> referenceWires : sourceComponent.getOutboundWires().values()) {
+            for (OutboundWire outboundWire : referenceWires) {
+                try {
+                    if (sourceComponent.isSystem()) {
+                        if (outboundWire.isAutowire()) {
+                            // JFM FIXME test
+                            InboundWire targetWire;
+                            try {
+                                Class interfaze = outboundWire.getServiceContract().getInterfaceClass();
+                                // JFM FIXME test this
+                                if (CompositeComponent.class.equals(interfaze)) {
+                                    JavaServiceContract contract =
+                                        new JavaServiceContract(CompositeComponent.class);
+                                    targetWire = new LoopBackWire();
+                                    targetWire.setServiceContract(contract);
+                                    targetWire.setContainer(parent);
+                                    outboundWire.setTargetWire(targetWire);
+                                    return;
+
+                                }
+                                targetWire = parent.resolveSystemAutowire(interfaze);
+                            } catch (TargetResolutionException e) {
+                                String sourceReference = outboundWire.getReferenceName();
+                                throw new WireConnectException("Error resolving autowire target",
+                                    sourceComponent.getName(),
+                                    sourceReference,
+                                    null,
+                                    null,
+                                    e);
+                            }
+                            if (targetWire == null) {
+                                // jfm fixme test
+                                // autowire may return null if it is optional. It is up to the client to decide if
+                                // an error should be thrown
+                                return;
+                            }
+                            Scope sourceScope = outboundWire.getContainer().getScope();
+                            Scope targetScope = targetWire.getContainer().getScope();
+                            boolean optimizable = isOptimizable(sourceScope, targetScope);
+                            connect(outboundWire, targetWire, optimizable);
+                        } else {
+                            SCAObject target = parent.getSystemChild(outboundWire.getTargetName().getPartName());
+                            connect(sourceComponent, outboundWire, target);
+                        }
+                    } else {
+                        if (outboundWire.isAutowire()) {
+                            // JFM FIXME test
+                            InboundWire targetWire;
+                            try {
+                                Class interfaze = outboundWire.getServiceContract().getInterfaceClass();
+                                targetWire = parent.resolveAutowire(interfaze);
+                            } catch (TargetResolutionException e) {
+                                throw new WireConnectException("Error resolving autowire target",
+                                    sourceComponent.getName(),
+                                    outboundWire.getReferenceName(),
+                                    null,
+                                    null,
+                                    e);
+                            }
+                            if (targetWire == null) {
+                                throw new TargetServiceNotFoundException("Autowire target not found",
+                                    sourceComponent.getName(),
+                                    outboundWire.getReferenceName(),
+                                    null,
+                                    null);
+                            }
+                            Scope sourceScope = outboundWire.getContainer().getScope();
+                            Scope targetScope = targetWire.getContainer().getScope();
+                            boolean optimizable = isOptimizable(sourceScope, targetScope);
+                            connect(outboundWire, targetWire, optimizable);
+                        } else {
+                            SCAObject target = parent.getChild(outboundWire.getTargetName().getPartName());
+                            connect(sourceComponent, outboundWire, target);
+                        }
+                    }
+                } catch (WiringException e) {
+                    e.addContextName(sourceComponent.getName());
+                    e.addContextName(parent.getName());
+                    throw e;
+                }
+            }
+        }
+        // connect inbound wires
+        for (InboundWire inboundWire : sourceComponent.getInboundWires().values()) {
+            for (InboundInvocationChain chain : inboundWire.getInvocationChains().values()) {
+                Operation<?> operation = chain.getOperation();
+                String serviceName = inboundWire.getServiceName();
+                TargetInvoker invoker;
+                try {
+                    invoker = sourceComponent.createTargetInvoker(serviceName, operation, null);
+                } catch (TargetInvokerCreationException e) {
+                    String targetName = inboundWire.getContainer().getName();
+                    throw new WireConnectException("Error processing inbound wire",
+                        null,
+                        null,
+                        targetName,
+                        serviceName,
+                        e);
+                }
+                chain.setTargetInvoker(invoker);
+                chain.prepare();
+            }
+        }
+    }
+
+    /**
      * Connects an component's outbound wire to its target in a composite.  Valid targets are either
      * <code>AtomicComponent</code>s contained in the composite, or <code>References</code> of the composite.
      *
-     * @param sourceWire
+     * @param sourceWire the source wire to connect
      * @throws WiringException
      */
     private void connect(SCAObject source, OutboundWire sourceWire, SCAObject target) throws WiringException {
@@ -581,12 +673,13 @@
             return true;
         } else if (pReferrer == Scope.SESSION && pReferee == Scope.SYSTEM) {
             return true;
-        } else if (pReferrer == Scope.SYSTEM && pReferee == Scope.COMPOSITE) {
-            // case where a service context points to a composite scoped component
-            return true;
-        } else {
-            return pReferrer == Scope.COMPOSITE && pReferee == Scope.SYSTEM;
-        }
+        } else //noinspection SimplifiableIfStatement
+            if (pReferrer == Scope.SYSTEM && pReferee == Scope.COMPOSITE) {
+                // case where a service context points to a composite scoped component
+                return true;
+            } else {
+                return pReferrer == Scope.COMPOSITE && pReferee == Scope.SYSTEM;
+            }
     }
 
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/HttpSessionScopeContainer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/HttpSessionScopeContainer.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/HttpSessionScopeContainer.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/HttpSessionScopeContainer.java Sat Dec 23 04:14:05 2006
@@ -26,10 +26,10 @@
 
 import org.apache.tuscany.spi.ObjectCreationException;
 import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.ScopeContainerMonitor;
 import org.apache.tuscany.spi.component.TargetDestructionException;
 import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.component.WorkContext;
-import org.apache.tuscany.spi.component.ScopeContainerMonitor;
 import org.apache.tuscany.spi.event.Event;
 import org.apache.tuscany.spi.model.Scope;
 

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/scope/RequestScopeContainer.java Sat Dec 23 04:14:05 2006
@@ -24,14 +24,14 @@
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
+import org.apache.tuscany.spi.ObjectCreationException;
 import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.ScopeContainerMonitor;
 import org.apache.tuscany.spi.component.TargetDestructionException;
 import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.component.WorkContext;
-import org.apache.tuscany.spi.component.ScopeContainerMonitor;
 import org.apache.tuscany.spi.event.Event;
 import org.apache.tuscany.spi.model.Scope;
-import org.apache.tuscany.spi.ObjectCreationException;
 
 import org.apache.tuscany.core.component.event.RequestEnd;
 import org.apache.tuscany.core.component.event.RequestStart;

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoAtomicComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoAtomicComponent.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoAtomicComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/PojoAtomicComponent.java Sat Dec 23 04:14:05 2006
@@ -33,7 +33,6 @@
 import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.extension.AtomicComponentExtension;
 import org.apache.tuscany.spi.wire.OutboundWire;
-import org.apache.tuscany.spi.wire.RuntimeWire;
 
 import org.apache.tuscany.core.injection.ArrayMultiplicityObjectFactory;
 import org.apache.tuscany.core.injection.ConversationIDObjectFactory;
@@ -171,7 +170,7 @@
         }
         //FIXME throw an error if no injection site found
     }
-    
+
     public void addConversationIDFactory(Member member) {
         ObjectFactory<String> convIDObjectFactory = new ConversationIDObjectFactory(workContext);
         if (member instanceof Field) {
@@ -227,7 +226,7 @@
         return false;
     }
 
-    protected Injector<Object> createInjector(Member member, RuntimeWire wire) {
+    protected Injector<Object> createInjector(Member member, OutboundWire wire) {
         ObjectFactory<?> factory = createWireFactory(wire);
         if (member instanceof Field) {
             return new FieldInjector<Object>((Field) member, factory);
@@ -264,6 +263,6 @@
         }
     }
 
-    protected abstract ObjectFactory<?> createWireFactory(RuntimeWire wire);
+    protected abstract ObjectFactory<?> createWireFactory(OutboundWire wire);
 
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/AbstractCompositeComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/AbstractCompositeComponent.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/AbstractCompositeComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/AbstractCompositeComponent.java Sat Dec 23 04:14:05 2006
@@ -47,17 +47,12 @@
  * @version $Rev$ $Date$
  */
 public abstract class AbstractCompositeComponent extends CompositeComponentExtension {
-
     public static final int DEFAULT_WAIT = 1000 * 60;
-
     // Blocking latch to ensure the composite is initialized exactly once prior to servicing requests
     protected CountDownLatch initializeLatch = new CountDownLatch(1);
-
     protected final Object lock = new Object();
-
     // Indicates whether the composite context has been initialized
     protected boolean initialized;
-
     protected ScopeContainer scopeContainer;
 
 

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeService.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeService.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/composite/CompositeService.java Sat Dec 23 04:14:05 2006
@@ -18,9 +18,7 @@
  */
 package org.apache.tuscany.core.implementation.composite;
 
-import org.apache.tuscany.spi.CoreRuntimeException;
 import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.extension.ServiceExtension;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.ServiceContract;
@@ -32,7 +30,7 @@
     public CompositeService(String name,
                             Class<?> interfaze,
                             CompositeComponent parent,
-                            WireService wireService) throws CoreRuntimeException {
+                            WireService wireService) {
         super(name, interfaze, parent, wireService);
     }
 
@@ -52,7 +50,4 @@
         return new CompositeReferenceCallbackTargetInvoker(operation, inboundWire);
     }
 
-    public Object getServiceInstance() throws TargetResolutionException {
-        return interfaze.cast(wireService.createProxy(outboundWire));
-    }
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaAtomicComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaAtomicComponent.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaAtomicComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/java/JavaAtomicComponent.java Sat Dec 23 04:14:05 2006
@@ -23,13 +23,11 @@
 import java.lang.reflect.Method;
 
 import org.apache.tuscany.spi.ObjectFactory;
-import org.apache.tuscany.spi.component.TargetNotFoundException;
-import org.apache.tuscany.spi.component.TargetResolutionException;
 import static org.apache.tuscany.spi.idl.java.JavaIDLUtils.findMethod;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.ServiceContract;
 import org.apache.tuscany.spi.wire.InboundWire;
-import org.apache.tuscany.spi.wire.RuntimeWire;
+import org.apache.tuscany.spi.wire.OutboundWire;
 import org.apache.tuscany.spi.wire.TargetInvoker;
 import org.apache.tuscany.spi.wire.WireObjectFactory;
 
@@ -53,26 +51,6 @@
         this.scope = configuration.getScopeContainer().getScope();
     }
 
-    public Object getServiceInstance(String name) throws TargetResolutionException {
-        InboundWire wire = serviceWires.get(name);
-        if (wire == null) {
-            TargetNotFoundException e = new TargetNotFoundException(name);
-            e.addContextName(getName());
-            throw e;
-        }
-        return wireService.createProxy(wire);
-    }
-
-    public Object getServiceInstance() throws TargetResolutionException {
-        if (serviceInterfaces.size() == 0) {
-            return getTargetInstance();
-        } else if (serviceInterfaces.size() == 1) {
-            return getTargetInstance();
-        } else {
-            throw new TargetNotFoundException("Component must have exactly one service");
-        }
-    }
-
     public TargetInvoker createTargetInvoker(String targetName, Operation operation, InboundWire callbackWire) {
         Method[] methods;
         Class callbackClass = null;
@@ -114,7 +92,7 @@
         }
     }
 
-    protected ObjectFactory<?> createWireFactory(RuntimeWire wire) {
+    protected ObjectFactory<?> createWireFactory(OutboundWire wire) {
         return new WireObjectFactory(wire, wireService);
     }
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ConversationProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ConversationProcessor.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ConversationProcessor.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ConversationProcessor.java Sat Dec 23 04:14:05 2006
@@ -18,7 +18,6 @@
  */
 package org.apache.tuscany.core.implementation.processor;
 
-import java.lang.reflect.Constructor;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ImplementationProcessorServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ImplementationProcessorServiceImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ImplementationProcessorServiceImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/processor/ImplementationProcessorServiceImpl.java Sat Dec 23 04:14:05 2006
@@ -34,7 +34,6 @@
 import org.apache.tuscany.spi.idl.InvalidServiceContractException;
 import org.apache.tuscany.spi.idl.TypeInfo;
 import org.apache.tuscany.spi.idl.java.JavaInterfaceProcessorRegistry;
-import org.apache.tuscany.spi.idl.java.JavaServiceContract;
 import org.apache.tuscany.spi.implementation.java.DuplicatePropertyException;
 import org.apache.tuscany.spi.implementation.java.ImplementationProcessorService;
 import org.apache.tuscany.spi.implementation.java.JavaMappedProperty;
@@ -63,7 +62,7 @@
 
     public JavaMappedService createService(Class<?> interfaze) throws InvalidServiceContractException {
         JavaMappedService service = new JavaMappedService();
-        service.setName(getBaseName(interfaze));
+        service.setName(interfaze.getName());
         service.setRemotable(interfaze.getAnnotation(Remotable.class) != null);
         ServiceContract<?> contract = registry.introspect(interfaze);
         service.setServiceContract(contract);
@@ -203,7 +202,7 @@
         int pos,
         Class<?> param,
         PojoComponentType<JavaMappedService, JavaMappedReference, JavaMappedProperty<?>> type,
-        List<String> injectionNames) throws InvalidAutowireException, InvalidConstructorException {
+        List<String> injectionNames) throws ProcessingException {
         // the param is marked as an autowire
         Autowire autowireAnnot = (Autowire) annot;
         JavaMappedReference reference = new JavaMappedReference();
@@ -235,7 +234,14 @@
         }
         reference.setName(name);
         reference.setRequired(autowireAnnot.required());
-        ServiceContract<?> contract = new JavaServiceContract();
+        ServiceContract<?> contract = null;
+        try {
+            contract = registry.introspect(param);
+        } catch (InvalidServiceContractException e) {
+            throw new ProcessingException(e);
+        }
+
+//        ServiceContract<?> contract = new JavaServiceContract();
         contract.setInterfaceClass(param);
         reference.setServiceContract(contract);
         type.getReferences().put(name, reference);

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilder.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemBindingBuilder.java Sat Dec 23 04:14:05 2006
@@ -20,31 +20,21 @@
 
 import java.net.URI;
 
-import org.apache.tuscany.spi.QualifiedName;
 import org.apache.tuscany.spi.builder.BindingBuilder;
-import org.apache.tuscany.spi.builder.MissingWireTargetException;
 import org.apache.tuscany.spi.builder.BuilderException;
+import org.apache.tuscany.spi.builder.MissingWireTargetException;
 import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.SCAObject;
-import org.apache.tuscany.spi.component.SystemAtomicComponent;
 import org.apache.tuscany.spi.deployer.DeploymentContext;
 import org.apache.tuscany.spi.extension.BindingBuilderExtension;
 import org.apache.tuscany.spi.model.BoundReferenceDefinition;
 import org.apache.tuscany.spi.model.BoundServiceDefinition;
 import org.apache.tuscany.spi.model.ServiceContract;
-import org.apache.tuscany.spi.wire.InboundWire;
 
 import org.apache.tuscany.core.implementation.system.component.SystemReference;
 import org.apache.tuscany.core.implementation.system.component.SystemReferenceImpl;
 import org.apache.tuscany.core.implementation.system.component.SystemService;
 import org.apache.tuscany.core.implementation.system.component.SystemServiceImpl;
 import org.apache.tuscany.core.implementation.system.model.SystemBinding;
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWire;
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWireImpl;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundAutowire;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWire;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWireImpl;
-import org.apache.tuscany.core.builder.InvalidTargetTypeException;
 
 /**
  * Creates {@link SystemService}s and {@link org.apache.tuscany.core.implementation.system.component.SystemReference}s
@@ -63,43 +53,34 @@
         if (uri == null) {
             throw new MissingWireTargetException("Target URI not specified", definition.getName());
         }
-        QualifiedName targetName = new QualifiedName(uri.getPath());
-        String targetComponentName = targetName.getPartName();
-        SCAObject target = parent.getSystemChild(targetComponentName);
-        if (target == null) {
-            throw new MissingWireTargetException(targetName.toString());
-        } else if (!(target instanceof SystemAtomicComponent)) {
-            throw new InvalidTargetTypeException("Target must be a system component",
-                definition.getName(),
-                null,
-                targetName.getPartName(),
-                null);
-        }
-        SystemAtomicComponent atomicComponent = (SystemAtomicComponent) target;
-        Class<?> interfaze = definition.getServiceContract().getInterfaceClass();
-        String name = definition.getName();
-        InboundWire inboundWire = new SystemInboundWireImpl(name, interfaze, atomicComponent);
-        SystemOutboundWire outboundWire = new SystemOutboundWireImpl(name, targetName, interfaze);
+        //  QualifiedName targetName = new QualifiedName(uri.getPath());
+        //  String targetComponentName = targetName.getPartName();
+        //  SCAObject target = parent.getSystemChild(targetComponentName);
+        // if (target == null) {
+        //     throw new MissingWireTargetException(targetName.toString());
+        // } else if (!(target instanceof AtomicComponent)) {
+        //    throw new InvalidTargetTypeException("Target must be a system component",
+//                definition.getName(),
+//                null,
+//                targetName.getPartName(),
+//                null);
+//        }
         ServiceContract<?> contract = definition.getServiceContract();
-        SystemService service = new SystemServiceImpl(definition.getName(), parent, contract);
-        service.setInboundWire(inboundWire);
-        service.setOutboundWire(outboundWire);
-        return service;
+        return new SystemServiceImpl(definition.getName(), parent, contract);
     }
 
     public SystemReference build(CompositeComponent parent,
                                  BoundReferenceDefinition<SystemBinding> definition,
                                  DeploymentContext deploymentContext) {
-        CompositeComponent autowireComponent = parent.getParent();
         Class<?> interfaze = definition.getServiceContract().getInterfaceClass();
         String name = definition.getName();
         SystemReferenceImpl reference = new SystemReferenceImpl(name, interfaze, parent);
-        SystemInboundWire inboundWire = new SystemInboundWireImpl(name, interfaze);
-        String refName = definition.getName();
-        boolean required = definition.isRequired();
-        SystemOutboundWire outboundWire = new SystemOutboundAutowire(refName, interfaze, autowireComponent, required);
-        reference.setInboundWire(inboundWire);
-        reference.setOutboundWire(outboundWire);
+//        SystemInboundWire inboundWire = new SystemInboundWireImpl(name, interfaze);
+//        String refName = definition.getName();
+//        boolean required = definition.isRequired();
+//        SystemOutboundWire outboundWire = new SystemOutboundAutowire(refName, interfaze, autowireComponent, required);
+//        reference.setInboundWire(inboundWire);
+//        reference.setOutboundWire(outboundWire);
         return reference;
     }
 

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilder.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilder.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/builder/SystemComponentBuilder.java Sat Dec 23 04:14:05 2006
@@ -25,14 +25,13 @@
 import java.util.Map;
 
 import org.apache.tuscany.spi.ObjectFactory;
-import org.apache.tuscany.spi.QualifiedName;
 import org.apache.tuscany.spi.annotation.Autowire;
-import org.apache.tuscany.spi.host.ResourceHost;
 import org.apache.tuscany.spi.builder.BuilderConfigException;
 import org.apache.tuscany.spi.component.AtomicComponent;
 import org.apache.tuscany.spi.component.CompositeComponent;
 import org.apache.tuscany.spi.deployer.DeploymentContext;
 import org.apache.tuscany.spi.extension.ComponentBuilderExtension;
+import org.apache.tuscany.spi.host.ResourceHost;
 import org.apache.tuscany.spi.implementation.java.ConstructorDefinition;
 import org.apache.tuscany.spi.implementation.java.JavaMappedProperty;
 import org.apache.tuscany.spi.implementation.java.JavaMappedReference;
@@ -40,18 +39,11 @@
 import org.apache.tuscany.spi.implementation.java.Resource;
 import org.apache.tuscany.spi.model.ComponentDefinition;
 import org.apache.tuscany.spi.model.PropertyValue;
-import org.apache.tuscany.spi.model.ReferenceDefinition;
-import org.apache.tuscany.spi.model.ReferenceTarget;
 import org.apache.tuscany.spi.model.ServiceDefinition;
-import org.apache.tuscany.spi.wire.OutboundWire;
 
 import org.apache.tuscany.core.implementation.PojoConfiguration;
 import org.apache.tuscany.core.implementation.system.component.SystemAtomicComponentImpl;
 import org.apache.tuscany.core.implementation.system.model.SystemImplementation;
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWire;
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWireImpl;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundAutowire;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWireImpl;
 import org.apache.tuscany.core.injection.MethodEventInvoker;
 import org.apache.tuscany.core.injection.PojoObjectFactory;
 import org.apache.tuscany.core.injection.ResourceObjectFactory;
@@ -131,24 +123,6 @@
         // handle properties
         Map<String, PropertyValue<?>> propertyValues = definition.getPropertyValues();
         processProperties(propertyValues, componentType.getProperties().values(), component);
-        // handle inbound wires
-        for (ServiceDefinition serviceDefinition : componentType.getServices().values()) {
-            Class<?> interfaze = serviceDefinition.getServiceContract().getInterfaceClass();
-            String name = serviceDefinition.getName();
-            SystemInboundWire wire = new SystemInboundWireImpl(name, interfaze, component);
-            component.addInboundWire(wire);
-        }
-        // handle references
-        processReferences(definition, componentType.getReferences(), parent, component);
-        // FIXME we need a way to build configuration references from autowires in the loader to eliminate this eval
-        for (ReferenceDefinition reference : componentType.getReferences().values()) {
-            if (reference.isAutowire()) {
-                Class interfaze = reference.getServiceContract().getInterfaceClass();
-                OutboundWire wire =
-                    new SystemOutboundAutowire(reference.getName(), interfaze, parent, reference.isRequired());
-                component.addOutboundWire(wire);
-            }
-        }
 
         // handle resources
         for (Resource resource : componentType.getResources().values()) {
@@ -166,32 +140,31 @@
             component.addResourceFactory(name, factory);
 
         }
-
         return component;
     }
 
-    private void processReferences(ComponentDefinition<SystemImplementation> definition,
-                                   Map<String, JavaMappedReference> references,
-                                   CompositeComponent parent,
-                                   SystemAtomicComponentImpl component) {
-        // no proxies needed for system components
-        for (ReferenceTarget target : definition.getReferenceTargets().values()) {
-            String referenceName = target.getReferenceName();
-            JavaMappedReference referenceDefiniton = references.get(referenceName);
-            Class interfaze = referenceDefiniton.getServiceContract().getInterfaceClass();
-            OutboundWire wire;
-            if (referenceDefiniton.isAutowire()) {
-                boolean required = referenceDefiniton.isRequired();
-                wire = new SystemOutboundAutowire(referenceName, interfaze, parent, required);
-            } else {
-                //FIXME support multiplicity!
-                assert target.getTargets().size() == 1 : "Multiplicity not yet implemented";
-                QualifiedName targetName = new QualifiedName(target.getTargets().get(0).getPath());
-                wire = new SystemOutboundWireImpl(referenceName, targetName, interfaze);
-            }
-            component.addOutboundWire(wire);
-        }
-    }
+//    private void processReferences(ComponentDefinition<SystemImplementation> definition,
+//                                   Map<String, JavaMappedReference> references,
+//                                   CompositeComponent parent,
+//                                   SystemAtomicComponentImpl component) {
+//        // no proxies needed for system components
+//        for (ReferenceTarget target : definition.getReferenceTargets().values()) {
+//            String referenceName = target.getReferenceName();
+//            JavaMappedReference referenceDefiniton = references.get(referenceName);
+//            Class interfaze = referenceDefiniton.getServiceContract().getInterfaceClass();
+//            OutboundWire wire;
+//            if (referenceDefiniton.isAutowire()) {
+//                boolean required = referenceDefiniton.isRequired();
+//                wire = new SystemOutboundAutowire(referenceName, interfaze, parent, required);
+//            } else {
+//                //FIXME support multiplicity!
+//                assert target.getTargets().size() == 1 : "Multiplicity not yet implemented";
+//                QualifiedName targetName = new QualifiedName(target.getTargets().get(0).getPath());
+//                wire = new SystemOutboundWireImpl(referenceName, targetName, interfaze);
+//            }
+//            component.addOutboundWire(wire);
+//        }
+//    }
 
     private void processProperties(Map<String, PropertyValue<?>> propertyValues,
                                    Collection<JavaMappedProperty<?>> properties,

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemAtomicComponentImpl.java Sat Dec 23 04:14:05 2006
@@ -19,38 +19,27 @@
 package org.apache.tuscany.core.implementation.system.component;
 
 import org.apache.tuscany.spi.ObjectFactory;
-import org.apache.tuscany.spi.component.SystemAtomicComponent;
-import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.Scope;
 import org.apache.tuscany.spi.wire.InboundWire;
-import org.apache.tuscany.spi.wire.RuntimeWire;
+import org.apache.tuscany.spi.wire.OutboundWire;
 import org.apache.tuscany.spi.wire.TargetInvoker;
 
 import org.apache.tuscany.core.implementation.PojoAtomicComponent;
 import org.apache.tuscany.core.implementation.PojoConfiguration;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWire;
 
 /**
  * Default implementation of a system atomic context
  *
  * @version $$Rev$$ $$Date$$
  */
-public class SystemAtomicComponentImpl extends PojoAtomicComponent implements SystemAtomicComponent {
+public class SystemAtomicComponentImpl extends PojoAtomicComponent {
 
     public SystemAtomicComponentImpl(PojoConfiguration configuration) {
         super(configuration);
         scope = Scope.COMPOSITE;
     }
 
-    public Object getServiceInstance(String name) throws TargetResolutionException {
-        return getTargetInstance();
-    }
-
-    public Object getServiceInstance() throws TargetResolutionException {
-        return getTargetInstance();
-    }
-
     public TargetInvoker createTargetInvoker(String targetName, Operation operation, InboundWire callbackWire) {
         return null;
     }
@@ -59,9 +48,7 @@
         return true;
     }
 
-    protected ObjectFactory<?> createWireFactory(RuntimeWire wire) {
-        assert wire instanceof SystemOutboundWire : "Wire must be an instance of " + SystemOutboundWire.class.getName();
-        SystemOutboundWire systemWire = (SystemOutboundWire) wire;
-        return new SystemWireObjectFactory(systemWire);
+    protected ObjectFactory<?> createWireFactory(OutboundWire wire) {
+        return new WireObjectFactory(wire);
     }
 }

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemReferenceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemReferenceImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemReferenceImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemReferenceImpl.java Sat Dec 23 04:14:05 2006
@@ -20,7 +20,6 @@
 
 import org.apache.tuscany.spi.component.AbstractSCAObject;
 import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.Scope;
 import org.apache.tuscany.spi.model.ServiceContract;
@@ -29,9 +28,6 @@
 import org.apache.tuscany.spi.wire.TargetInvoker;
 import org.apache.tuscany.spi.wire.WireInvocationHandler;
 
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWire;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWire;
-
 /**
  * Default implementation of a reference configured with the
  * {@link org.apache.tuscany.core.implementation.system.model.SystemBinding}
@@ -40,8 +36,8 @@
  */
 public class SystemReferenceImpl extends AbstractSCAObject implements SystemReference {
 
-    protected SystemInboundWire inboundWire;
-    protected SystemOutboundWire outboundWire;
+    protected InboundWire inboundWire;
+    protected OutboundWire outboundWire;
     protected Class<?> referenceInterface;
 
 
@@ -56,8 +52,7 @@
     }
 
     public void setInboundWire(InboundWire wire) {
-        assert wire instanceof SystemInboundWire : "Wire must be a " + SystemInboundWire.class.getName();
-        this.inboundWire = (SystemInboundWire) wire;
+        this.inboundWire = wire;
     }
 
     public InboundWire getInboundWire() {
@@ -69,8 +64,7 @@
     }
 
     public void setOutboundWire(OutboundWire wire) {
-        assert wire instanceof SystemOutboundWire : "Wire must be a " + SystemOutboundWire.class.getName();
-        this.outboundWire = (SystemOutboundWire) wire;
+        this.outboundWire = wire;
     }
 
     public Class<?> getInterface() {
@@ -79,10 +73,6 @@
 
     public void setInterface(Class<?> referenceInterface) {
         this.referenceInterface = referenceInterface;
-    }
-
-    public Object getServiceInstance() throws TargetResolutionException {
-        return referenceInterface.cast(inboundWire.getTargetService());
     }
 
     public WireInvocationHandler getHandler() {

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemServiceImpl.java?view=diff&rev=489888&r1=489887&r2=489888
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemServiceImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/implementation/system/component/SystemServiceImpl.java Sat Dec 23 04:14:05 2006
@@ -21,7 +21,6 @@
 import org.apache.tuscany.spi.CoreRuntimeException;
 import org.apache.tuscany.spi.component.AbstractSCAObject;
 import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.TargetResolutionException;
 import org.apache.tuscany.spi.model.Operation;
 import org.apache.tuscany.spi.model.Scope;
 import org.apache.tuscany.spi.model.ServiceContract;
@@ -30,9 +29,6 @@
 import org.apache.tuscany.spi.wire.TargetInvoker;
 import org.apache.tuscany.spi.wire.WireInvocationHandler;
 
-import org.apache.tuscany.core.implementation.system.wire.SystemInboundWire;
-import org.apache.tuscany.core.implementation.system.wire.SystemOutboundWire;
-
 /**
  * Default implementation for services configured with the
  * {@link org.apache.tuscany.core.implementation.system.model.SystemBinding}
@@ -40,9 +36,8 @@
  * @version $$Rev$$ $$Date$$
  */
 public class SystemServiceImpl extends AbstractSCAObject implements SystemService {
-
-    protected SystemInboundWire inboundWire;
-    protected SystemOutboundWire outboundWire;
+    protected InboundWire inboundWire;
+    protected OutboundWire outboundWire;
     protected ServiceContract<?> serviceContract;
 
     public SystemServiceImpl(String name, CompositeComponent parent, ServiceContract<?> serviceContract)
@@ -60,8 +55,7 @@
     }
 
     public void setInboundWire(InboundWire wire) {
-        assert wire instanceof SystemInboundWire : "wire must be a " + SystemInboundWire.class.getName();
-        this.inboundWire = (SystemInboundWire) wire;
+        this.inboundWire = wire;
     }
 
     public OutboundWire getOutboundWire() {
@@ -69,8 +63,7 @@
     }
 
     public void setOutboundWire(OutboundWire wire) {
-        assert wire instanceof SystemOutboundWire : "wire must be a " + SystemOutboundWire.class.getName();
-        this.outboundWire = (SystemOutboundWire) wire;
+        this.outboundWire = wire;
     }
 
     public Class<?> getInterface() {
@@ -81,11 +74,6 @@
         // system services do not proxy
         throw new UnsupportedOperationException();
     }
-
-    public Object getServiceInstance() throws TargetResolutionException {
-        return inboundWire.getTargetService();
-    }
-
 
     public TargetInvoker createCallbackTargetInvoker(ServiceContract contract, Operation operation) {
         throw new UnsupportedOperationException();



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