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/04/23 17:27:48 UTC
svn commit: r396284 [1/4] - in /incubator/tuscany/java/sca:
bindings/binding.axis2/
bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/
bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/
bindings/bi...
Author: jmarino
Date: Sun Apr 23 08:27:42 2006
New Revision: 396284
URL: http://svn.apache.org/viewcvs?rev=396284&view=rev
Log:
extension point refactorings for context factory builders, policy builders; renaming of ProxyFactoryFactory to WireFactoryFactory; introduction of base abstract extension classes
Added:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/PolicyOrderer.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/ExternalServiceContextFactory.java
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/BaseExternalServiceContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/AnnotationProcessor.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/processor/
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/processor/AnnotationProcessorSupport.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/processor/ScopeProcessor.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/processor/ServiceInterfaceProcessor.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/extension/
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/extension/EntryPointBuilderSupport.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/extension/ExternalServiceBuilderSupport.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/extension/WireBuilderSupport.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyCreationException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/WireException.java (contents, props changed)
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/WireFactoryFactory.java
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyFactoryFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/WireFactoryInitException.java (contents, props changed)
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyInitializationException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKWireFactoryFactory.java
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKProxyFactoryFactory.java
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKWireFactoryFactoryTestCase.java
- copied, changed from r396081, incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKProxyFactoryTestCase.java
Removed:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/BaseExternalServiceContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyFactoryFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/ProxyInitializationException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKProxyFactoryFactory.java
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKProxyFactoryTestCase.java
Modified:
incubator/tuscany/java/sca/bindings/binding.axis2/pom.xml
incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceBuilder.java
incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceWireBuilder.java
incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/WebServiceEntryPointBuilder.java
incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/ExternalWebServiceContextFactory.java
incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/handler/ExternalWebServiceClient.java
incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/builder/JSONRPCEntryPointConfigurationBuilder.java
incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/handler/JSONRPCEntryPointServlet.java
incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilder.java
incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilder.java
incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/config/JavaContextFactory.java
incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/invocation/ScopedJavaComponentInvoker.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilderTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilderTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/MockInterceptorBuilder.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/DifferentInterfaceWireTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/MultiplicityTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/invocation/ScopedPojoInvokerTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/binding/foo/FooBindingBuilder.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/binding/foo/FooExternalServiceContextFactory.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/BasicModuleScopeTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/BasicRequestScopeTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/BasicSessionScopeTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/BasicStatelessScopeTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/CompositeScopeTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/ModuleScopeLifecycleTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/RequestScopeLifecycleTestCase.java
incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/scopes/SessionScopeLifecycleTestCase.java
incubator/tuscany/java/sca/containers/container.js/src/main/java/org/apache/tuscany/container/js/builder/JavaScriptContextFactoryBuilder.java
incubator/tuscany/java/sca/containers/container.js/src/main/java/org/apache/tuscany/container/js/builder/JavaScriptTargetWireBuilder.java
incubator/tuscany/java/sca/containers/container.js/src/main/java/org/apache/tuscany/container/js/config/JavaScriptContextFactory.java
incubator/tuscany/java/sca/containers/container.js/src/main/java/org/apache/tuscany/container/js/rhino/E4XAXIOMUtils.java
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/builder/JSContextFactoryBuilderTestCase.java
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/builder/MockInterceptorBuilder.java
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/integration/JSComponentContextTestCase.java
incubator/tuscany/java/sca/containers/container.js/src/test/java/org/apache/tuscany/container/js/mock/MockAssemblyFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/ContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/ContextFactoryBuilder.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/PolicyBuilder.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/SourcePolicyBuilder.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/SourcePolicyOrderer.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/TargetPolicyBuilder.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/TargetPolicyOrderer.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/WireBuilder.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/builder/impl/EntryPointContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/impl/HierarchicalBuilder.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/system/DefaultPolicyBuilderRegistry.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/builder/system/PolicyBuilderRegistry.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/ComponentTypeIntrospector.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/JavaIntrospectionHelper.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/config/impl/Java5ComponentTypeIntrospector.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/impl/AbstractCompositeContext.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/EntryPointContextImpl.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/context/impl/ExternalServiceContextImpl.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/ContextObjectFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/injection/PojoObjectFactory.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/system/config/SystemContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemEntryPointContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemExternalServiceContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/config/SystemObjectContextFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/system/context/SystemCompositeContextImpl.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/InvocationConfiguration.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/InvocationException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/InvocationRuntimeException.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/MessageChannel.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/MethodHashMap.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/WireConfiguration.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/WireFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/impl/NullWireFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKSourceWireFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/jdk/JDKTargetWireFactory.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/service/DefaultWireFactoryService.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/wire/service/WireFactoryService.java
incubator/tuscany/java/sca/core/src/main/resources/system.module
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/builder/impl/DefaultWireBuilderTestCase.java
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/builder/impl/NegativeDefaultWireBuilderTestCase.java
incubator/tuscany/java/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/AbstractTomcatTest.java
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/pom.xml
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/pom.xml?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/pom.xml (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/pom.xml Sun Apr 23 08:27:42 2006
@@ -131,7 +131,7 @@
</dependency>
</dependencies>
- <!-- build>
+ <!-- buildSource>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -147,5 +147,5 @@
</plugin>
</plugins>
- </build -->
+ </buildSource -->
</project>
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceBuilder.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceBuilder.java Sun Apr 23 08:27:42 2006
@@ -16,14 +16,7 @@
*/
package org.apache.tuscany.binding.axis2.builder;
-import java.lang.reflect.Method;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.namespace.QName;
-
import commonj.sdo.helper.TypeHelper;
-
import org.apache.axis2.AxisFault;
import org.apache.axis2.client.Options;
import org.apache.axis2.context.ConfigurationContext;
@@ -34,143 +27,40 @@
import org.apache.tuscany.binding.axis2.handler.WebServicePortMetaData;
import org.apache.tuscany.binding.axis2.util.TuscanyAxisConfigurator;
import org.apache.tuscany.core.builder.BuilderConfigException;
-import org.apache.tuscany.core.builder.BuilderException;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
-import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
-import org.apache.tuscany.core.config.JavaIntrospectionHelper;
-import org.apache.tuscany.core.context.QualifiedName;
+import org.apache.tuscany.core.builder.impl.ExternalServiceContextFactory;
+import org.apache.tuscany.core.extension.ExternalServiceBuilderSupport;
import org.apache.tuscany.core.injection.SingletonObjectFactory;
-import org.apache.tuscany.core.message.MessageFactory;
-import org.apache.tuscany.core.system.annotation.Autowire;
-import org.apache.tuscany.core.wire.MethodHashMap;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
-import org.apache.tuscany.core.wire.TargetInvocationConfiguration;
-import org.apache.tuscany.core.wire.TargetWireFactory;
-import org.apache.tuscany.core.wire.WireTargetConfiguration;
-import org.apache.tuscany.core.wire.impl.InvokerInterceptor;
-import org.apache.tuscany.model.assembly.AssemblyObject;
-import org.apache.tuscany.model.assembly.ConfiguredService;
+import org.apache.tuscany.model.assembly.Binding;
import org.apache.tuscany.model.assembly.ExternalService;
-import org.apache.tuscany.model.assembly.Service;
-import org.apache.tuscany.model.assembly.ServiceContract;
-import org.osoa.sca.annotations.Init;
import org.osoa.sca.annotations.Scope;
+import javax.xml.namespace.QName;
+
/**
- * Creates a <code>ContextFactoryBuilder</code> for an external service configured
- * with the {@link WebServiceBinding}
- *
+ * Creates a <code>ContextFactory</code> for an external service configured with the {@link WebServiceBinding}
+ *
* @version $Rev$ $Date$
*/
@Scope("MODULE")
-public class ExternalWebServiceBuilder implements ContextFactoryBuilder {
- private ContextFactoryBuilderRegistry builderRegistry;
-
- private ProxyFactoryFactory proxyFactoryFactory;
-
- private MessageFactory messageFactory;
-
- private ContextFactoryBuilder policyBuilder;
+public class ExternalWebServiceBuilder extends ExternalServiceBuilderSupport {
- public ExternalWebServiceBuilder() {
+ protected boolean handlesBindingType(Binding binding) {
+ return binding instanceof WebServiceBinding;
}
- @Init(eager = true)
- public void init() {
- builderRegistry.register(this);
- }
-
- @Autowire
- public void setBuilderRegistry(ContextFactoryBuilderRegistry builderRegistry) {
- this.builderRegistry = builderRegistry;
- }
-
- /**
- * Sets the factory used to construct proxies implmementing the business interface required by a reference
- */
- @Autowire
- public void setProxyFactoryFactory(ProxyFactoryFactory factory) {
- this.proxyFactoryFactory = factory;
- }
-
- /**
- * Sets the factory used to construct wire messages
- *
- * @param msgFactory
- */
- @Autowire
- public void setMessageFactory(MessageFactory msgFactory) {
- this.messageFactory = msgFactory;
- }
-
- /**
- * Sets a builder responsible for creating source-side and target-side wire chains for a
- * reference. The reference builder may be hierarchical, containing other child reference
- * builders thatoperate on specific metadata used to construct and wire chain.
- *
- * @see org.apache.tuscany.core.builder.impl.HierarchicalBuilder
- */
- public void setPolicyBuilder(ContextFactoryBuilder builder) {
- policyBuilder = builder;
- }
-
- public void build(AssemblyObject object) throws BuilderException {
- if (!(object instanceof ExternalService)) {
- return;
- }
- ExternalService externalService = (ExternalService) object;
- if (externalService.getBindings().size() < 1
- || !(externalService.getBindings().get(0) instanceof WebServiceBinding)) {
- return;
- }
+ protected ExternalServiceContextFactory createExternalServiceContextFactory(ExternalService externalService) {
ExternalWebServiceClient externalWebServiceClient = createExternalWebServiceClient(externalService);
- ExternalWebServiceContextFactory config
- = new ExternalWebServiceContextFactory(externalService.getName(),
+ return new ExternalWebServiceContextFactory(externalService.getName(),
new SingletonObjectFactory<ExternalWebServiceClient>(externalWebServiceClient));
-
- ConfiguredService configuredService = externalService.getConfiguredService();
- Service service = configuredService.getPort();
- ServiceContract serviceContract = service.getServiceContract();
- Map<Method, TargetInvocationConfiguration> iConfigMap
- = new MethodHashMap<TargetInvocationConfiguration>();
- TargetWireFactory proxyFactory = proxyFactoryFactory.createTargetWireFactory();
- Set<Method> javaMethods = JavaIntrospectionHelper.getAllUniqueMethods(serviceContract.getInterface());
- for (Method method : javaMethods) {
- TargetInvocationConfiguration iConfig = new TargetInvocationConfiguration(method);
- iConfigMap.put(method, iConfig);
- }
- QualifiedName qName = new QualifiedName(externalService.getName()
- + QualifiedName.NAME_SEPARATOR
- + service.getName());
- WireTargetConfiguration wireConfiguration = new WireTargetConfiguration(qName,
- iConfigMap,
- serviceContract
- .getInterface()
- .getClassLoader(),
- messageFactory);
- proxyFactory.setBusinessInterface(serviceContract.getInterface());
- proxyFactory.setConfiguration(wireConfiguration);
- config.addTargetProxyFactory(service.getName(), proxyFactory);
- configuredService.setProxyFactory(proxyFactory);
- if (policyBuilder != null) {
- // invoke the reference builder to handle additional policy metadata
- policyBuilder.build(configuredService);
- }
- // add tail interceptor
- for (TargetInvocationConfiguration iConfig : iConfigMap.values()) {
- iConfig.addInterceptor(new InvokerInterceptor());
- }
-
- externalService.setContextFactory(config);
}
/**
* Create an ExternalWebServiceClient for the WebServiceBinding
*/
- protected ExternalWebServiceClient createExternalWebServiceClient(ExternalService externalService) {
+ private ExternalWebServiceClient createExternalWebServiceClient(ExternalService externalService) {
// TODO: Review should there be a single global Axis ConfigurationContext
TuscanyAxisConfigurator tuscanyAxisConfigurator = new TuscanyAxisConfigurator(null, null);
ConfigurationContext configurationContext = tuscanyAxisConfigurator.getConfigurationContext();
@@ -178,18 +68,18 @@
WebServiceBinding wsBinding = (WebServiceBinding) externalService.getBindings().get(0);
WebServicePortMetaData wsPortMetaData = new WebServicePortMetaData(wsBinding.getWSDLDefinition(),
- wsBinding.getWSDLPort(),
- wsBinding.getURI(),
- false);
+ wsBinding.getWSDLPort(),
+ wsBinding.getURI(),
+ false);
QName serviceQName = wsPortMetaData.getServiceName();
String portName = wsPortMetaData.getPortName().getLocalPart();
AxisService axisService;
try {
axisService = AxisService.createClientSideAxisService(wsBinding.getWSDLDefinition(),
- serviceQName,
- portName,
- new Options());
+ serviceQName,
+ portName,
+ new Options());
} catch (AxisFault e) {
BuilderConfigException bce = new BuilderConfigException("AxisFault creating external service", e);
bce.addContextName(externalService.getName());
@@ -197,7 +87,6 @@
}
TypeHelper typeHelper = externalService.getComposite().getAssemblyContext().getTypeHelper();
-
return new ExternalWebServiceClient(configurationContext, axisService, wsPortMetaData, typeHelper);
}
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceWireBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceWireBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceWireBuilder.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/ExternalWebServiceWireBuilder.java Sun Apr 23 08:27:42 2006
@@ -18,73 +18,22 @@
import org.apache.tuscany.binding.axis2.config.ExternalWebServiceContextFactory;
import org.apache.tuscany.binding.axis2.handler.ExternalWebServiceTargetInvoker;
-import org.apache.tuscany.core.builder.BuilderConfigException;
-import org.apache.tuscany.core.builder.WireBuilder;
+import org.apache.tuscany.core.context.QualifiedName;
import org.apache.tuscany.core.context.ScopeContext;
-import org.apache.tuscany.core.runtime.RuntimeContext;
-import org.apache.tuscany.core.system.annotation.Autowire;
-import org.apache.tuscany.core.wire.InvocationConfiguration;
-import org.apache.tuscany.core.wire.SourceWireFactory;
-import org.apache.tuscany.core.wire.TargetWireFactory;
-import org.osoa.sca.annotations.Init;
+import org.apache.tuscany.core.extension.WireBuilderSupport;
+import org.apache.tuscany.core.wire.TargetInvoker;
import org.osoa.sca.annotations.Scope;
-@Scope("MODULE")
-public class ExternalWebServiceWireBuilder implements WireBuilder {
-
- private RuntimeContext runtimeContext;
-
- /**
- * Constructs a new ExternalWebServiceWireBuilder.
- */
- public ExternalWebServiceWireBuilder() {
- super();
- }
-
- @Autowire
- public void setRuntimeContext(RuntimeContext context) {
- runtimeContext = context;
- }
-
- @SuppressWarnings("deprecation")
- @Init(eager = true)
- public void init() {
- runtimeContext.addBuilder(this);
- }
+import java.lang.reflect.Method;
- public void connect(SourceWireFactory<?> sourceFactory,
- TargetWireFactory<?> targetFactory,
- Class targetType, boolean downScope,
- ScopeContext targetScopeContext) throws BuilderConfigException {
-
- if (!(ExternalWebServiceContextFactory.class.isAssignableFrom(targetType))) {
- return;
- }
- for (InvocationConfiguration sourceInvocationConfig
- : sourceFactory.getConfiguration().getInvocationConfigurations().values()) {
-
- ExternalWebServiceTargetInvoker invoker
- = new ExternalWebServiceTargetInvoker(sourceFactory.getConfiguration().getTargetName(),
- sourceInvocationConfig.getMethod(),
- targetScopeContext);
-
- // if (downScope) {
- // // the source scope is shorter than the target, so the invoker can cache the target instance
- // invoker.setCacheable(true);
- // } else {
- // invoker.setCacheable(false);
- // }
- sourceInvocationConfig.setTargetInvoker(invoker);
- }
+@Scope("MODULE")
+public class ExternalWebServiceWireBuilder extends WireBuilderSupport {
+ protected boolean handlesTargetType(Class targetType) {
+ return ExternalWebServiceContextFactory.class.isAssignableFrom(targetType);
}
- public void completeTargetChain(TargetWireFactory<?> targetFactory,
- Class targetType,
- ScopeContext targetScopeContext)
- throws BuilderConfigException {
-
- //TODO implement
+ protected TargetInvoker createInvoker(QualifiedName targetName, Method operation, ScopeContext context, boolean downScope) {
+ return new ExternalWebServiceTargetInvoker(targetName, operation, context);
}
-
}
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/WebServiceEntryPointBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/WebServiceEntryPointBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/WebServiceEntryPointBuilder.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/builder/WebServiceEntryPointBuilder.java Sun Apr 23 08:27:42 2006
@@ -16,163 +16,30 @@
*/
package org.apache.tuscany.binding.axis2.builder;
-import java.lang.reflect.Method;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
import org.apache.tuscany.binding.axis2.assembly.WebServiceBinding;
-import org.apache.tuscany.core.builder.BuilderException;
-import org.apache.tuscany.core.builder.ContextFactoryBuilder;
-import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
+import org.apache.tuscany.binding.axis2.config.WebServiceEntryPointContextFactory;
import org.apache.tuscany.core.builder.impl.EntryPointContextFactory;
-import org.apache.tuscany.core.config.JavaIntrospectionHelper;
-import org.apache.tuscany.core.context.QualifiedName;
-import org.apache.tuscany.core.message.Message;
+import org.apache.tuscany.core.extension.EntryPointBuilderSupport;
import org.apache.tuscany.core.message.MessageFactory;
-import org.apache.tuscany.core.system.annotation.Autowire;
-import org.apache.tuscany.core.wire.Interceptor;
-import org.apache.tuscany.core.wire.InvocationRuntimeException;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
-import org.apache.tuscany.core.wire.SourceInvocationConfiguration;
-import org.apache.tuscany.core.wire.SourceWireFactory;
-import org.apache.tuscany.core.wire.TargetInvoker;
-import org.apache.tuscany.core.wire.WireSourceConfiguration;
-import org.apache.tuscany.model.assembly.AssemblyObject;
-import org.apache.tuscany.model.assembly.ConfiguredService;
+import org.apache.tuscany.model.assembly.Binding;
import org.apache.tuscany.model.assembly.EntryPoint;
-import org.apache.tuscany.model.assembly.Service;
-import org.apache.tuscany.model.assembly.ServiceContract;
-
-import org.osoa.sca.annotations.Init;
import org.osoa.sca.annotations.Scope;
/**
- * Creates a <code>ContextFactoryBuilder</code> for an entry point configured
- * with the {@link WebServiceBinding}
- *
+ * Creates a <code>ContextFactory</code> for an entry point configured with the {@link WebServiceBinding}
+ *
* @version $Rev$ $Date$
*/
@Scope("MODULE")
-public class WebServiceEntryPointBuilder implements ContextFactoryBuilder {
- private ContextFactoryBuilderRegistry builderRegistry;
-
- private ProxyFactoryFactory proxyFactoryFactory;
-
- private MessageFactory messageFactory;
-
- private ContextFactoryBuilder policyBuilder;
-
- public WebServiceEntryPointBuilder() {
- }
-
- @Init(eager = true)
- public void init() {
- builderRegistry.register(this);
- }
-
- @Autowire
- public void setBuilderRegistry(ContextFactoryBuilderRegistry builderRegistry) {
- this.builderRegistry = builderRegistry;
- }
+public class WebServiceEntryPointBuilder extends EntryPointBuilderSupport {
- /**
- * Sets the factory used to construct proxies implmementing the business interface required by a reference
- */
- @Autowire
- public void setProxyFactoryFactory(ProxyFactoryFactory factory) {
- this.proxyFactoryFactory = factory;
+ protected boolean handlesBindingType(Binding binding) {
+ return binding instanceof WebServiceBinding;
}
- /**
- * Sets the factory used to construct wire messages
- *
- * @param msgFactory
- */
- @Autowire
- public void setMessageFactory(MessageFactory msgFactory) {
- this.messageFactory = msgFactory;
+ protected EntryPointContextFactory createEntryPointContextFactory(EntryPoint entryPoint, MessageFactory msgFactory) {
+ return new WebServiceEntryPointContextFactory(entryPoint.getName(),messageFactory);
}
-
- /**
- * Sets a builder responsible for creating source-side and target-side wire chains for a reference. The
- * reference builder may be hierarchical, containing other child reference builders that
- * operate on specific metadata used to construct and wire chain.
- *
- * @see org.apache.tuscany.core.builder.impl.HierarchicalBuilder
- */
- public void setPolicyBuilder(ContextFactoryBuilder builder) {
- policyBuilder = builder;
- }
-
- public void build(AssemblyObject object) throws BuilderException {
- if (!(object instanceof EntryPoint)) {
- return;
- }
- EntryPoint entryPoint = (EntryPoint) object;
- if (entryPoint.getBindings().size() < 1
- || !(entryPoint.getBindings().get(0) instanceof WebServiceBinding)) {
- return;
- }
-
- EntryPointContextFactory config = new EntryPointContextFactory(entryPoint.getName(), messageFactory);
-
- ConfiguredService configuredService = entryPoint.getConfiguredService();
- Service service = configuredService.getPort();
- ServiceContract serviceContract = service.getServiceContract();
- Map<Method, SourceInvocationConfiguration> iConfigMap
- = new HashMap<Method, SourceInvocationConfiguration>();
- SourceWireFactory proxyFactory = proxyFactoryFactory.createSourceWireFactory();
- Set<Method> javaMethods = JavaIntrospectionHelper.getAllUniqueMethods(serviceContract.getInterface());
- for (Method method : javaMethods) {
- SourceInvocationConfiguration iConfig = new SourceInvocationConfiguration(method);
- iConfigMap.put(method, iConfig);
- }
- QualifiedName qName = new QualifiedName(entryPoint.getConfiguredReference()
- .getTargetConfiguredServices().get(0)
- .getPart().getName()
- + '/' + service.getName());
- WireSourceConfiguration wireConfiguration
- = new WireSourceConfiguration(qName,
- iConfigMap,
- serviceContract.getInterface().getClassLoader(),
- messageFactory);
- proxyFactory.setBusinessInterface(serviceContract.getInterface());
- proxyFactory.setConfiguration(wireConfiguration);
- config.addSourceProxyFactory(service.getName(), proxyFactory);
- configuredService.setProxyFactory(proxyFactory);
- if (policyBuilder != null) {
- // invoke the reference builder to handle additional policy metadata
- policyBuilder.build(configuredService);
- }
- // add tail interceptor
- //for (TargetInvocationConfiguration iConfig : iConfigMap.values()) {
- // iConfig.addInterceptor(new EntryPointInvokerInterceptor());
- //}
- entryPoint.setContextFactory(config);
- }
-
- //FIXME same as the InvokerInterceptor except that it doesn't throw an exception in setNext
- // For some reason another InvokerInterceptor is added after this one, need Jim to look into it
- // and figure out why.
- public static class EntryPointInvokerInterceptor implements Interceptor {
-
- public EntryPointInvokerInterceptor() {
- }
-
- public Message invoke(Message msg) throws InvocationRuntimeException {
- TargetInvoker invoker = msg.getTargetInvoker();
- if (invoker == null) {
- throw new InvocationRuntimeException("No target invoker specified on message");
- }
- return invoker.invoke(msg);
- }
-
- public void setNext(Interceptor next) {
- }
-
- }
-
}
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/ExternalWebServiceContextFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/ExternalWebServiceContextFactory.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/ExternalWebServiceContextFactory.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/config/ExternalWebServiceContextFactory.java Sun Apr 23 08:27:42 2006
@@ -17,7 +17,7 @@
package org.apache.tuscany.binding.axis2.config;
import org.apache.tuscany.core.builder.ObjectFactory;
-import org.apache.tuscany.core.builder.impl.BaseExternalServiceContextFactory;
+import org.apache.tuscany.core.builder.impl.ExternalServiceContextFactory;
/**
* Creates instances of {@link org.apache.tuscany.core.context.ExternalServiceContext}
@@ -27,7 +27,7 @@
*
* @version $Rev$ $Date$
*/
-public class ExternalWebServiceContextFactory extends BaseExternalServiceContextFactory {
+public class ExternalWebServiceContextFactory extends ExternalServiceContextFactory {
public ExternalWebServiceContextFactory(String name, ObjectFactory objectFactory) {
super(name, objectFactory);
Modified: incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/handler/ExternalWebServiceClient.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/handler/ExternalWebServiceClient.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/handler/ExternalWebServiceClient.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/handler/ExternalWebServiceClient.java Sun Apr 23 08:27:42 2006
@@ -100,7 +100,7 @@
/**
* Set all the Axis2 options needed for the wire TODO: review whats needed
- * here once createClientSideAxisService is added to the Axis2 build
+ * here once createClientSideAxisService is added to the Axis2 buildSource
*/
private void setServiceOptions(ServiceClient serviceClient, String operationName) {
Options options = new Options();
Modified: incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/builder/JSONRPCEntryPointConfigurationBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/builder/JSONRPCEntryPointConfigurationBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/builder/JSONRPCEntryPointConfigurationBuilder.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/builder/JSONRPCEntryPointConfigurationBuilder.java Sun Apr 23 08:27:42 2006
@@ -27,7 +27,7 @@
import org.apache.tuscany.core.context.QualifiedName;
import org.apache.tuscany.core.message.MessageFactory;
import org.apache.tuscany.core.system.annotation.Autowire;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
+import org.apache.tuscany.core.wire.WireFactoryFactory;
import org.apache.tuscany.core.wire.SourceInvocationConfiguration;
import org.apache.tuscany.core.wire.SourceWireFactory;
import org.apache.tuscany.core.wire.WireSourceConfiguration;
@@ -48,7 +48,7 @@
public class JSONRPCEntryPointConfigurationBuilder implements ContextFactoryBuilder {
private ContextFactoryBuilderRegistry builderRegistry;
- private ProxyFactoryFactory proxyFactoryFactory;
+ private WireFactoryFactory wireFactoryFactory;
private MessageFactory messageFactory;
@@ -71,8 +71,8 @@
* Sets the factory used to construct proxies implmementing the business interface required by a reference
*/
@Autowire
- public void setProxyFactoryFactory(ProxyFactoryFactory factory) {
- this.proxyFactoryFactory = factory;
+ public void setProxyFactoryFactory(WireFactoryFactory factory) {
+ this.wireFactoryFactory = factory;
}
/**
@@ -110,7 +110,7 @@
Service service = configuredService.getPort();
ServiceContract serviceContract = service.getServiceContract();
Map<Method, SourceInvocationConfiguration> iConfigMap = new HashMap<Method, SourceInvocationConfiguration>();
- SourceWireFactory proxyFactory = proxyFactoryFactory.createSourceWireFactory();
+ SourceWireFactory proxyFactory = wireFactoryFactory.createSourceWireFactory();
Set<Method> javaMethods = JavaIntrospectionHelper.getAllUniqueMethods(serviceContract.getInterface());
for (Method method : javaMethods) {
SourceInvocationConfiguration iConfig = new SourceInvocationConfiguration(method);
@@ -122,7 +122,7 @@
messageFactory);
proxyFactory.setBusinessInterface(serviceContract.getInterface());
proxyFactory.setConfiguration(wireConfiguration);
- config.addSourceProxyFactory(service.getName(), proxyFactory);
+ config.addSourceWireFactory(service.getName(), proxyFactory);
configuredService.setProxyFactory(proxyFactory);
if (policyBuilder != null) {
// invoke the reference builder to handle additional policy metadata
Modified: incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/handler/JSONRPCEntryPointServlet.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/handler/JSONRPCEntryPointServlet.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/handler/JSONRPCEntryPointServlet.java (original)
+++ incubator/tuscany/java/sca/bindings/binding.jsonrpc/src/main/java/org/apache/tuscany/binding/jsonrpc/handler/JSONRPCEntryPointServlet.java Sun Apr 23 08:27:42 2006
@@ -23,6 +23,7 @@
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
+import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
Modified: incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilder.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilder.java Sun Apr 23 08:27:42 2006
@@ -58,6 +58,11 @@
private WireFactoryService wireFactoryService;
+ /**
+ * Constructs a new instance
+ *
+ * @param wireFactoryService the system service responsible for creating wire factories
+ */
public JavaContextFactoryBuilder(WireFactoryService wireFactoryService) {
this.wireFactoryService = wireFactoryService;
}
@@ -76,7 +81,7 @@
}
/**
- * Sets the factory used to construct wire factories
+ * Sets the system service used to construct wire factories
*/
@Autowire
public void setWireFactoryService(WireFactoryService wireFactoryService) {
@@ -94,8 +99,7 @@
Scope previous = null;
Scope scope = Scope.INSTANCE;
for (Service service : services) {
- // calculate and validate the scope of the component; ensure that all service scopes are the same unless
- // a scope is stateless
+ // calculate and validate the scope of the component; ensure that all service scopes are the same unless stateless
Scope current = service.getServiceContract().getScope();
if (previous != null && current != null && current != previous
&& (current != Scope.INSTANCE && previous != Scope.INSTANCE)) {
@@ -144,7 +148,7 @@
eagerInit = init.eager();
continue;
}
- // @spec - should we allow the same method to have @init and @destroy?
+ // TODO spec - should we allow the same method to have @init and @destroy?
Destroy destroy = method.getAnnotation(Destroy.class);
if (destroy != null && destroyInvoker == null) {
destroyInvoker = new MethodEventInvoker<Object>(method);
@@ -169,13 +173,11 @@
injectors.add(injector);
}
}
- component.setContextFactory(contextFactory);
-
// create target-side wire chains for each service offered by the implementation
for (ConfiguredService configuredService : component.getConfiguredServices()) {
Service service = configuredService.getPort();
TargetWireFactory wireFactory = wireFactoryService.createTargetFactory(configuredService);
- contextFactory.addTargetProxyFactory(service.getName(), wireFactory);
+ contextFactory.addTargetWireFactory(service.getName(), wireFactory);
}
// create injectors for references
@@ -186,12 +188,11 @@
injectors.add(injector);
}
}
-
contextFactory.setSetters(injectors);
contextFactory.setEagerInit(eagerInit);
contextFactory.setInitInvoker(initInvoker);
contextFactory.setDestroyInvoker(destroyInvoker);
-
+ component.setContextFactory(contextFactory);
} catch (BuilderException e) {
e.addContextName(component.getName());
throw e;
@@ -253,7 +254,7 @@
List<ObjectFactory> objectFactories = new ArrayList<ObjectFactory>();
List<SourceWireFactory> wirefactories = wireFactoryService.createSourceFactory(reference);
for (SourceWireFactory wireFactory : wirefactories) {
- config.addSourceProxyFactory(refName, wireFactory);
+ config.addSourceWireFactory(refName, wireFactory);
objectFactories.add(new ProxyObjectFactory(wireFactory));
}
boolean multiplicity = reference.getPort().getMultiplicity() == Multiplicity.ONE_N
Modified: incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilder.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilder.java Sun Apr 23 08:27:42 2006
@@ -15,72 +15,28 @@
import org.apache.tuscany.container.java.config.JavaContextFactory;
import org.apache.tuscany.container.java.invocation.ScopedJavaComponentInvoker;
-import org.apache.tuscany.core.builder.BuilderConfigException;
-import org.apache.tuscany.core.builder.WireBuilder;
+import org.apache.tuscany.core.context.QualifiedName;
import org.apache.tuscany.core.context.ScopeContext;
-import org.apache.tuscany.core.runtime.RuntimeContext;
-import org.apache.tuscany.core.system.annotation.Autowire;
-import org.apache.tuscany.core.wire.SourceInvocationConfiguration;
-import org.apache.tuscany.core.wire.SourceWireFactory;
-import org.apache.tuscany.core.wire.TargetWireFactory;
-import org.osoa.sca.annotations.Init;
+import org.apache.tuscany.core.extension.WireBuilderSupport;
+import org.apache.tuscany.core.wire.TargetInvoker;
import org.osoa.sca.annotations.Scope;
+import java.lang.reflect.Method;
+
/**
* Completes a wire to a Java-based target component by adding a scoped java invoker to the source chain
- *
+ *
* @version $Rev$ $Date$
*/
@Scope("MODULE")
-public class JavaTargetWireBuilder implements WireBuilder {
-
- private RuntimeContext runtimeContext;
-
- @Autowire
- public void setRuntimeContext(RuntimeContext context) {
- runtimeContext = context;
- }
-
- public JavaTargetWireBuilder() {
- }
-
- @Init(eager=true)
- public void init() {
- runtimeContext.addBuilder(this);
- }
+public class JavaTargetWireBuilder extends WireBuilderSupport {
- public void connect(SourceWireFactory sourceFactory, TargetWireFactory targetFactory, Class targetType, boolean downScope,
- ScopeContext targetScopeContext) throws BuilderConfigException {
- if (!(JavaContextFactory.class.isAssignableFrom(targetType))) {
- return;
- }
- for (SourceInvocationConfiguration sourceInvocationConfig : sourceFactory.getConfiguration().getInvocationConfigurations()
- .values()) {
- ScopedJavaComponentInvoker invoker = new ScopedJavaComponentInvoker(sourceFactory.getConfiguration()
- .getTargetName(), sourceInvocationConfig.getMethod(), targetScopeContext);
- if (downScope) {
- // the source scope is shorter than the target, so the invoker can cache the target instance
- invoker.setCacheable(false);
- } else {
- invoker.setCacheable(true); //TODO set to true
- }
- sourceInvocationConfig.setTargetInvoker(invoker);
- }
+ protected boolean handlesTargetType(Class targetType) {
+ return JavaContextFactory.class.isAssignableFrom(targetType);
}
- public void completeTargetChain(TargetWireFactory targetFactory, Class targetType, ScopeContext targetScopeContext)
- throws BuilderConfigException {
- // TODO implement.
- // if (!(JavaComponentRuntimeConfiguration.class.isAssignableFrom(targetType))) {
- // return;
- // }
- // for (InvocationConfiguration targetInvocationConfig :
- // targetFactory.getConfiguration().getInvocationConfigurations()
- // .values()) {
- // ScopedJavaComponentInvoker invoker = new ScopedJavaComponentInvoker(targetFactory.getConfiguration()
- // .getTargetName(), ((JavaOperationType) targetInvocationConfig.getOperationType()).getJavaMethod(),
- // targetScopeContext);
- // targetInvocationConfig.setTargetInvoker(invoker);
- // }
+ protected TargetInvoker createInvoker(QualifiedName targetName, Method operation, ScopeContext context, boolean downScope) {
+ boolean cacheable = !downScope;
+ return new ScopedJavaComponentInvoker(targetName, operation, context,cacheable);
}
}
Modified: incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/config/JavaContextFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/config/JavaContextFactory.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/config/JavaContextFactory.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/config/JavaContextFactory.java Sun Apr 23 08:27:42 2006
@@ -66,10 +66,6 @@
// whether the component is stateless
private boolean stateless;
- // ----------------------------------
- // Constructors
- // ----------------------------------
-
/**
* Creates a new context factory
*
@@ -101,25 +97,25 @@
private Map<String, TargetWireFactory> targetProxyFactories = new HashMap<String, TargetWireFactory>();
- public void addTargetProxyFactory(String serviceName, TargetWireFactory factory) {
+ public void addTargetWireFactory(String serviceName, TargetWireFactory factory) {
targetProxyFactories.put(serviceName, factory);
}
- public TargetWireFactory getTargetProxyFactory(String serviceName) {
+ public TargetWireFactory getTargetWireFactory(String serviceName) {
return targetProxyFactories.get(serviceName);
}
- public Map<String, TargetWireFactory> getTargetProxyFactories() {
+ public Map<String, TargetWireFactory> getTargetWireFactories() {
return targetProxyFactories;
}
private List<SourceWireFactory> sourceProxyFactories = new ArrayList<SourceWireFactory>();
- public void addSourceProxyFactory(String referenceName, SourceWireFactory factory) {
+ public void addSourceWireFactory(String referenceName, SourceWireFactory factory) {
sourceProxyFactories.add(factory);
}
- public List<SourceWireFactory> getSourceProxyFactories() {
+ public List<SourceWireFactory> getSourceWireFactories() {
return sourceProxyFactories;
}
Modified: incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/invocation/ScopedJavaComponentInvoker.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/invocation/ScopedJavaComponentInvoker.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/invocation/ScopedJavaComponentInvoker.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/main/java/org/apache/tuscany/container/java/invocation/ScopedJavaComponentInvoker.java Sun Apr 23 08:27:42 2006
@@ -16,15 +16,15 @@
*/
package org.apache.tuscany.container.java.invocation;
-import java.lang.reflect.Method;
-
import org.apache.tuscany.core.context.QualifiedName;
import org.apache.tuscany.core.context.ScopeContext;
import org.apache.tuscany.core.context.TargetException;
+import java.lang.reflect.Method;
+
/**
* Uses a scope container to resolve an implementation instance based on the current thread context
- *
+ *
* @version $Rev$ $Date$
*/
public class ScopedJavaComponentInvoker extends AbstractJavaComponentInvoker {
@@ -37,12 +37,24 @@
public boolean cacheable;
- public ScopedJavaComponentInvoker(QualifiedName serviceName, Method operation, ScopeContext container) {
+
+ /**
+ * Creates a new invoker
+ *
+ * @param serviceName the name of the component/service pair to invoke
+ * @param operation the operation the invoker is associated with
+ * @param scopeContext the scope context the component is resolved in
+ * @param cacheable Sets whether the target service instance may be cached by the invoker. This is a possible optimization
+ * when a wire is configured for a "down-scope" reference, i.e. a reference from a source of a shorter
+ * lifetime to a source of greater lifetime.
+ */
+ public ScopedJavaComponentInvoker(QualifiedName serviceName, Method operation, ScopeContext scopeContext, boolean cacheable) {
super(operation);
assert (serviceName != null) : "No service name specified";
- assert (container != null) : "No scope container specified";
+ assert (scopeContext != null) : "No scope scopeContext specified";
name = serviceName;
- this.container = container;
+ this.container = scopeContext;
+ this.cacheable = cacheable;
}
/**
@@ -50,15 +62,6 @@
*/
public boolean isCacheable() {
return cacheable;
- }
-
- /**
- * Sets whether the target service instance may be cached by the invoker. This is a possible optimization when a
- * wire is configured for a "down-scope" reference, i.e. a reference from a source of a shorter lifetime to a source
- * of greater lifetime.
- */
- public void setCacheable(boolean val) {
- cacheable = val;
}
/**
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilderTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilderTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaContextFactoryBuilderTestCase.java Sun Apr 23 08:27:42 2006
@@ -24,7 +24,7 @@
import org.apache.tuscany.core.context.Context;
import org.apache.tuscany.core.context.event.ModuleStart;
import org.apache.tuscany.core.wire.WireConfiguration;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.core.wire.SourceWireFactory;
import org.apache.tuscany.core.wire.service.WireFactoryService;
import org.apache.tuscany.core.wire.service.DefaultWireFactoryService;
@@ -42,7 +42,7 @@
MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, true);
PolicyBuilderRegistry policyRegistry = new DefaultPolicyBuilderRegistry();
policyRegistry.registerSourceBuilder(interceptorBuilder);
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), policyRegistry);
+ WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), policyRegistry);
JavaContextFactoryBuilder builder = new JavaContextFactoryBuilder(wireService);
JavaTargetWireBuilder javaWireBuilder = new JavaTargetWireBuilder();
@@ -66,14 +66,14 @@
for (Component component : components) {
ContextFactory<Context> source = (ContextFactory<Context>) component.getContextFactory();
Assert.assertNotNull(source);
- for (SourceWireFactory pFactory : source.getSourceProxyFactories()) {
+ for (SourceWireFactory pFactory : source.getSourceWireFactories()) {
WireConfiguration pConfig = pFactory.getConfiguration();
Component target = compMap.get(pConfig.getTargetName().getPartName());
if (target != null) {
ContextFactory targetConfig = (ContextFactory) target.getContextFactory();
boolean downScope = strategy.downScopeReference(source.getScope(), targetConfig.getScope());
- wireBuilder.connect(pFactory, targetConfig.getTargetProxyFactory(pFactory.getConfiguration().getTargetName()
+ wireBuilder.connect(pFactory, targetConfig.getTargetWireFactory(pFactory.getConfiguration().getTargetName()
.getPortName()), targetConfig.getClass(), downScope, scopeContext);
}
pFactory.initialize();
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilderTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilderTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/JavaTargetWireBuilderTestCase.java Sun Apr 23 08:27:42 2006
@@ -17,7 +17,7 @@
import org.apache.tuscany.core.context.QualifiedName;
import org.apache.tuscany.core.wire.MethodHashMap;
import org.apache.tuscany.core.wire.impl.InvokerInterceptor;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.core.wire.WireSourceConfiguration;
import org.apache.tuscany.core.wire.WireTargetConfiguration;
import org.apache.tuscany.core.wire.SourceInvocationConfiguration;
@@ -58,7 +58,7 @@
source.addResponseHandler(sourceResponseHandler);
source.addInterceptor(sourceInterceptor);
- SourceWireFactory sourceFactory = new JDKProxyFactoryFactory().createSourceWireFactory();
+ SourceWireFactory sourceFactory = new JDKWireFactoryFactory().createSourceWireFactory();
Map<Method, SourceInvocationConfiguration> sourceInvocationConfigs = new MethodHashMap<SourceInvocationConfiguration>();
sourceInvocationConfigs.put(hello, source);
WireSourceConfiguration sourceConfig = new WireSourceConfiguration("foo",new QualifiedName("target/SimpleTarget"),
@@ -75,7 +75,7 @@
target.addInterceptor(targetInterceptor);
target.addInterceptor(new InvokerInterceptor());
- TargetWireFactory targetFactory = new JDKProxyFactoryFactory().createTargetWireFactory();
+ TargetWireFactory targetFactory = new JDKWireFactoryFactory().createTargetWireFactory();
Map<Method, TargetInvocationConfiguration> targetInvocationConfigs = new MethodHashMap<TargetInvocationConfiguration>();
targetInvocationConfigs.put(hello, target);
WireTargetConfiguration targetConfig = new WireTargetConfiguration(new QualifiedName("target/SimpleTarget"),
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/MockInterceptorBuilder.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/MockInterceptorBuilder.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/MockInterceptorBuilder.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/builder/MockInterceptorBuilder.java Sun Apr 23 08:27:42 2006
@@ -37,11 +37,8 @@
*/
public class MockInterceptorBuilder implements SourcePolicyBuilder, TargetPolicyBuilder {
-
private Interceptor interceptor;
- private boolean source;
-
/**
* Creates the builder
*
@@ -51,55 +48,13 @@
*/
public MockInterceptorBuilder(Interceptor interceptor, boolean source) {
this.interceptor = interceptor;
- this.source = source;
- }
-
- public void build(AssemblyObject modelObject) throws BuilderException {
- if (source) {
- if (!(modelObject instanceof ConfiguredReference)) {
- return;
- } else {
- ConfiguredReference cref = (ConfiguredReference) modelObject;
- // xcvProxyFactory pFactory = (WireFactory) cref.getProxyFactory();
- for (ConfiguredService configuredService : cref.getTargetConfiguredServices()) {
- SourceWireFactory pFactory = (SourceWireFactory) configuredService.getProxyFactory();
- for (SourceInvocationConfiguration config : pFactory.getConfiguration().getInvocationConfigurations().values())
- {
- config.addInterceptor(interceptor);
- }
- }
- }
- } else {
- if (!(modelObject instanceof ConfiguredService)) {
- return;
- } else {
- ConfiguredService cservice = (ConfiguredService) modelObject;
- WireFactory pFactory = (WireFactory) cservice.getProxyFactory();
- if (pFactory instanceof SourceWireFactory) {
- //if (pFactory.getConfiguration() instanceof WireSourceConfiguration){
- for (SourceInvocationConfiguration config : ((SourceWireFactory) pFactory).getConfiguration().getInvocationConfigurations().values())
- {
- config.addInterceptor(interceptor);
- }
- } else if (pFactory instanceof TargetWireFactory) {
- for (TargetInvocationConfiguration config : ((TargetWireFactory) pFactory).getConfiguration().getInvocationConfigurations().values())
- {
- config.addInterceptor(interceptor);
- }
-
- }
- }
-
- }
}
public void build(ConfiguredReference reference, List<WireSourceConfiguration> configurations) throws BuilderException {
for (WireSourceConfiguration wireSourceConfiguration : configurations) {
for (SourceInvocationConfiguration configuration : wireSourceConfiguration.getInvocationConfigurations().values()) {
configuration.addInterceptor(interceptor);
-
}
-
}
}
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/DifferentInterfaceWireTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/DifferentInterfaceWireTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/DifferentInterfaceWireTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/DifferentInterfaceWireTestCase.java Sun Apr 23 08:27:42 2006
@@ -33,7 +33,7 @@
import org.apache.tuscany.core.context.AtomicContext;
import org.apache.tuscany.core.context.event.ModuleStart;
import org.apache.tuscany.core.context.impl.CompositeContextImpl;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.core.wire.service.WireFactoryService;
import org.apache.tuscany.core.wire.service.DefaultWireFactoryService;
import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
@@ -71,7 +71,7 @@
CompositeContextImpl context = new CompositeContextImpl();
context.setName("system.context");
List<ContextFactoryBuilder>builders = MockFactory.createSystemBuilders();
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), new DefaultPolicyBuilderRegistry());
+ WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), new DefaultPolicyBuilderRegistry());
builders.add(new JavaContextFactoryBuilder(wireService));
List<WireBuilder> wireBuilders = new ArrayList<WireBuilder>();
wireBuilders.add(new JavaTargetWireBuilder());
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/MultiplicityTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/MultiplicityTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/MultiplicityTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/context/MultiplicityTestCase.java Sun Apr 23 08:27:42 2006
@@ -32,7 +32,7 @@
import org.apache.tuscany.core.context.AtomicContext;
import org.apache.tuscany.core.context.event.ModuleStart;
import org.apache.tuscany.core.context.impl.CompositeContextImpl;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.core.wire.service.WireFactoryService;
import org.apache.tuscany.core.wire.service.DefaultWireFactoryService;
import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
@@ -67,7 +67,7 @@
CompositeContextImpl context = new CompositeContextImpl();
context.setName("system.context");
List<ContextFactoryBuilder>builders = MockFactory.createSystemBuilders();
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), new DefaultPolicyBuilderRegistry());
+ WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), new DefaultPolicyBuilderRegistry());
builders.add(new JavaContextFactoryBuilder(wireService));
List<WireBuilder> wireBuilders = new ArrayList<WireBuilder>();
wireBuilders.add(new JavaTargetWireBuilder());
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/integration/JavaBuilderContextIntegrationTestCase.java Sun Apr 23 08:27:42 2006
@@ -15,7 +15,7 @@
import junit.framework.Assert;
import junit.framework.TestCase;
-
+import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
import org.apache.tuscany.container.java.builder.JavaContextFactoryBuilder;
import org.apache.tuscany.container.java.builder.JavaTargetWireBuilder;
import org.apache.tuscany.container.java.builder.MockHandlerBuilder;
@@ -25,26 +25,23 @@
import org.apache.tuscany.container.java.mock.MockFactory;
import org.apache.tuscany.container.java.mock.components.GenericComponent;
import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
-import org.apache.tuscany.core.builder.system.PolicyBuilderRegistry;
-import org.apache.tuscany.core.builder.system.DefaultPolicyBuilderRegistry;
import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
+import org.apache.tuscany.core.builder.system.DefaultPolicyBuilderRegistry;
+import org.apache.tuscany.core.builder.system.PolicyBuilderRegistry;
import org.apache.tuscany.core.client.BootstrapHelper;
import org.apache.tuscany.core.context.CompositeContext;
import org.apache.tuscany.core.context.event.ModuleStart;
import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.message.MessageFactory;
import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
import org.apache.tuscany.core.runtime.RuntimeContext;
import org.apache.tuscany.core.runtime.RuntimeContextImpl;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
-import org.apache.tuscany.core.wire.service.WireFactoryService;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.core.wire.service.DefaultWireFactoryService;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
-import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
+import org.apache.tuscany.core.wire.service.WireFactoryService;
/**
* Verifies that the composite context implementation and java component builders construct references properly
- *
+ *
* @version $Rev$ $Date$
*/
public class JavaBuilderContextIntegrationTestCase extends TestCase {
@@ -72,12 +69,9 @@
MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, true);
PolicyBuilderRegistry policyRegistry = new DefaultPolicyBuilderRegistry();
policyRegistry.registerSourceBuilder(interceptorBuilder);
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), policyRegistry);
- JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
+ WireFactoryService wireFactory = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), policyRegistry);
+ JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireFactory);
- //HierarchicalBuilder refBuilder = new HierarchicalBuilder();
- //refBuilder.addBuilder(interceptorBuilder);
- //javaBuilder.addPolicyBuilder(interceptorBuilder);
builderRegistry.register(javaBuilder);
RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, defaultWireBuilder);
@@ -106,21 +100,8 @@
PolicyBuilderRegistry policyRegistry = new DefaultPolicyBuilderRegistry();
policyRegistry.registerSourceBuilder(interceptorBuilder);
policyRegistry.registerSourceBuilder(handlerBuilder);
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), policyRegistry);
- JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-
- //WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory());
- //JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-
- //MockSyncInterceptor mockInterceptor = new MockSyncInterceptor();
- //MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, true);
- //HierarchicalBuilder refBuilder = new HierarchicalBuilder();
- //refBuilder.addBuilder(interceptorBuilder);
-// MockHandler mockHandler = new MockHandler();
-// MockHandlerBuilder handlerBuilder = new MockHandlerBuilder(mockHandler, true, true);
- //refBuilder.addBuilder(handlerBuilder);
-// javaBuilder.addPolicyBuilder(interceptorBuilder);
-// javaBuilder.addPolicyBuilder(handlerBuilder);
+ WireFactoryService wireFactory = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), policyRegistry);
+ JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireFactory);
builderRegistry.register(javaBuilder);
RuntimeContext runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, defaultWireBuilder);
@@ -151,20 +132,8 @@
PolicyBuilderRegistry policyRegistry = new DefaultPolicyBuilderRegistry();
policyRegistry.registerSourceBuilder(interceptorBuilder);
policyRegistry.registerSourceBuilder(handlerBuilder);
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), policyRegistry);
- JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-
-
-
-// WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory());
-// JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-//
-// MockSyncInterceptor mockInterceptor = new MockSyncInterceptor();
-// MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, false);
-// MockHandler mockHandler = new MockHandler();
-// MockHandlerBuilder handlerBuilder = new MockHandlerBuilder(mockHandler, false, true);
-// javaBuilder.addPolicyBuilder(interceptorBuilder);
-// javaBuilder.addPolicyBuilder(handlerBuilder);
+ WireFactoryService wireFactory = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), policyRegistry);
+ JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireFactory);
builderRegistry.register(javaBuilder);
@@ -193,15 +162,8 @@
MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, false);
PolicyBuilderRegistry policyRegistry = new DefaultPolicyBuilderRegistry();
policyRegistry.registerSourceBuilder(interceptorBuilder);
- WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory(), policyRegistry);
- JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-
-// WireFactoryService wireService = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKProxyFactoryFactory());
-// JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireService);
-//
-// MockSyncInterceptor mockInterceptor = new MockSyncInterceptor();
-// MockInterceptorBuilder interceptorBuilder = new MockInterceptorBuilder(mockInterceptor, false);
-// javaBuilder.addPolicyBuilder(interceptorBuilder);
+ WireFactoryService wireFactory = new DefaultWireFactoryService(new MessageFactoryImpl(), new JDKWireFactoryFactory(), policyRegistry);
+ JavaContextFactoryBuilder javaBuilder = new JavaContextFactoryBuilder(wireFactory);
builderRegistry.register(javaBuilder);
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/invocation/ScopedPojoInvokerTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/invocation/ScopedPojoInvokerTestCase.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/invocation/ScopedPojoInvokerTestCase.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/invocation/ScopedPojoInvokerTestCase.java Sun Apr 23 08:27:42 2006
@@ -45,7 +45,7 @@
public void testScopedInvoke() throws Exception {
ScopeContext container = new MockScopeContext();
- ScopedJavaComponentInvoker invoker = new ScopedJavaComponentInvoker(new QualifiedName("foo"), echoMethod, container);
+ ScopedJavaComponentInvoker invoker = new ScopedJavaComponentInvoker(new QualifiedName("foo"), echoMethod, container,false);
Object ret = invoker.invokeTarget("foo");
Assert.assertEquals("foo", ret);
}
Modified: incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java
URL: http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java?rev=396284&r1=396283&r2=396284&view=diff
==============================================================================
--- incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java (original)
+++ incubator/tuscany/java/sca/containers/container.java/src/test/java/org/apache/tuscany/container/java/mock/MockFactory.java Sun Apr 23 08:27:42 2006
@@ -79,10 +79,9 @@
import org.apache.tuscany.core.client.BootstrapHelper;
import org.apache.tuscany.core.message.impl.MessageFactoryImpl;
import org.apache.tuscany.core.message.MessageFactory;
-import org.apache.tuscany.core.wire.ProxyFactoryFactory;
-import org.apache.tuscany.core.wire.service.WireFactoryService;
+import org.apache.tuscany.core.wire.WireFactoryFactory;
import org.apache.tuscany.core.wire.service.DefaultWireFactoryService;
-import org.apache.tuscany.core.wire.jdk.JDKProxyFactoryFactory;
+import org.apache.tuscany.core.wire.jdk.JDKWireFactoryFactory;
import org.apache.tuscany.model.assembly.AssemblyContext;
import org.apache.tuscany.model.assembly.AtomicComponent;
import org.apache.tuscany.model.assembly.Component;
@@ -112,7 +111,7 @@
public static final String MESSAGE_FACTORY = "java.runtime.messageFactory";
- public static final String PROXY_FACTORY_FACTORY = "java.runtime.proxyFactoryFactory";
+ public static final String PROXY_FACTORY_FACTORY = "java.runtime.wireFactoryFactory";
public static final String WIRE_FACTORY_SERVICE = "java.runtime.wireFactoryservice";
@@ -690,8 +689,8 @@
SystemCompositeContext ctx = (SystemCompositeContext) runtime.getSystemContext().getContext(SYSTEM_CHILD);
ctx.registerModelObject(systemFactory.createSystemComponent(POLICY_BUILDER_REGISTRY, PolicyBuilderRegistry.class, DefaultPolicyBuilderRegistry.class, Scope.MODULE));
ctx.registerModelObject(systemFactory.createSystemComponent(MESSAGE_FACTORY, MessageFactory.class, MessageFactoryImpl.class, Scope.MODULE));
- ctx.registerModelObject(systemFactory.createSystemComponent(PROXY_FACTORY_FACTORY, ProxyFactoryFactory.class, JDKProxyFactoryFactory.class, Scope.MODULE));
- ctx.registerModelObject(systemFactory.createSystemComponent(WIRE_FACTORY_SERVICE, WireFactoryService.class, DefaultWireFactoryService.class, Scope.MODULE));
+ ctx.registerModelObject(systemFactory.createSystemComponent(PROXY_FACTORY_FACTORY, WireFactoryFactory.class, JDKWireFactoryFactory.class, Scope.MODULE));
+ ctx.registerModelObject(systemFactory.createSystemComponent(WIRE_FACTORY_SERVICE, org.apache.tuscany.core.wire.service.WireFactoryService.class, DefaultWireFactoryService.class, Scope.MODULE));
ctx.registerModelObject(systemFactory.createSystemComponent(JAVA_BUILDER, ContextFactoryBuilder.class, JavaContextFactoryBuilder.class, Scope.MODULE));
ctx.registerModelObject(systemFactory.createSystemComponent(JAVA_WIRE_BUILDER, WireBuilder.class, JavaTargetWireBuilder.class, Scope.MODULE));
ctx.publish(new ModuleStart(new Object()));