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/05/21 04:30:18 UTC
svn commit: r408123 - in /incubator/tuscany/sandbox/jboynes/sca:
core2/src/main/java/org/apache/tuscany/core/system/builder/
core2/src/main/java/org/apache/tuscany/core/system/context/
core2/src/test/java/org/apache/tuscany/core/integration/system/ cor...
Author: jmarino
Date: Sat May 20 19:30:17 2006
New Revision: 408123
URL: http://svn.apache.org/viewvc?rev=408123&view=rev
Log:
make SystemServiceContextImpl extend ServiceContextExtension
Modified:
incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemBindingBuilder.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentBuilder.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemAtomicContextImpl.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemServiceContextImpl.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToAtomicContextTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToReferenceContextTestCase.java
incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java
incubator/tuscany/sandbox/jboynes/sca/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceContextExtension.java
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemBindingBuilder.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemBindingBuilder.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemBindingBuilder.java Sat May 20 19:30:17 2006
@@ -23,7 +23,7 @@
Class<?> interfaze = boundService.getServiceContract().getInterface();
QualifiedName targetName = new QualifiedName(boundService.getTarget().getPath());
SystemSourceWire<?> wire = new SystemSourceWire(boundService.getName(), targetName, interfaze);
- return new SystemServiceContextImpl(boundService.getName(), interfaze, wire, parent);
+ return new SystemServiceContextImpl(boundService.getName(), wire, parent);
}
public Context build(CompositeContext parent, BoundReference<SystemBinding> boundReference) {
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentBuilder.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentBuilder.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/builder/SystemComponentBuilder.java Sat May 20 19:30:17 2006
@@ -7,6 +7,7 @@
import java.util.Map;
import org.apache.tuscany.common.ObjectFactory;
+import org.apache.tuscany.core.context.AutowireContext;
import org.apache.tuscany.core.injection.ContextInjector;
import org.apache.tuscany.core.injection.Injector;
import org.apache.tuscany.core.injection.PojoObjectFactory;
@@ -14,12 +15,10 @@
import org.apache.tuscany.core.system.context.SystemAtomicContext;
import org.apache.tuscany.core.system.context.SystemAtomicContextImpl;
import org.apache.tuscany.core.system.model.SystemImplementation;
+import org.apache.tuscany.core.system.wire.SystemSourceAutowire;
import org.apache.tuscany.core.system.wire.SystemSourceWire;
import org.apache.tuscany.core.system.wire.SystemTargetWire;
-import org.apache.tuscany.core.system.wire.SystemTargetAutowire;
-import org.apache.tuscany.core.system.wire.SystemSourceAutowire;
import org.apache.tuscany.core.util.JavaIntrospectionHelper;
-import org.apache.tuscany.core.context.AutowireContext;
import org.apache.tuscany.model.Component;
import org.apache.tuscany.model.ReferenceTarget;
import org.apache.tuscany.model.Service;
@@ -36,8 +35,8 @@
public class SystemComponentBuilder implements ComponentBuilder<SystemImplementation> {
public ComponentContext build(CompositeContext parent, Component<SystemImplementation> component) throws BuilderConfigException {
- assert(parent instanceof AutowireContext): "Parent must implement "+ AutowireContext.class.getName();
- AutowireContext autowireContext = (AutowireContext)parent;
+ assert(parent instanceof AutowireContext): "Parent must implement " + AutowireContext.class.getName();
+ AutowireContext autowireContext = (AutowireContext) parent;
PojoComponentType componentType = component.getImplementation().getComponentType();
List<Class<?>> serviceInterfaces = new ArrayList<Class<?>>();
for (Service service : componentType.getServices().values()) {
@@ -45,8 +44,7 @@
}
Constructor<?> constr;
try {
- constr = JavaIntrospectionHelper.getDefaultConstructor(
- component.getImplementation().getImplementationClass());
+ constr = JavaIntrospectionHelper.getDefaultConstructor(component.getImplementation().getImplementationClass());
} catch (NoSuchMethodException e) {
BuilderConfigException bce = new BuilderConfigException("Error building component", e);
bce.setIdentifier(component.getName());
@@ -59,8 +57,7 @@
Map<String, Member> members = componentType.getReferenceMembers();
for (Injector injector : injectors) {
if (injector instanceof ContextInjector) {
- // a context injector is found; iterate and determine if the parent context
- // implements the interface
+ // a context injector is found; determine if the parent context implements the interface
Class contextType = JavaIntrospectionHelper.introspectGeneric(injector.getClass(), 0);
if (contextType.isAssignableFrom(parent.getClass())) {
((ContextInjector) injector).setContext(parent);
@@ -92,7 +89,7 @@
}
SourceWire<?> wire;
if (target.getReference().isAutowire()) {
- wire = new SystemSourceAutowire(referenceName,interfaze,autowireContext);
+ wire = new SystemSourceAutowire(referenceName, interfaze, autowireContext);
} else {
//FIXME support multiplicity!
assert(target.getTargets().size() == 1): "Multiplicity not yet implemented";
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemAtomicContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemAtomicContextImpl.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemAtomicContextImpl.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemAtomicContextImpl.java Sat May 20 19:30:17 2006
@@ -49,7 +49,7 @@
}
public void prepare() {
- // overrid and do nothing since system services do not proxy
+ // override and do nothing since system services do not proxy
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemServiceContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemServiceContextImpl.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemServiceContextImpl.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/main/java/org/apache/tuscany/core/system/context/SystemServiceContextImpl.java Sat May 20 19:30:17 2006
@@ -3,57 +3,33 @@
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
-import org.apache.tuscany.model.Scope;
import org.apache.tuscany.spi.CoreRuntimeException;
-import org.apache.tuscany.spi.context.AbstractContext;
import org.apache.tuscany.spi.context.CompositeContext;
+import org.apache.tuscany.spi.extension.ServiceContextExtension;
import org.apache.tuscany.spi.wire.SourceWire;
import org.apache.tuscany.spi.wire.TargetInvoker;
/**
* @version $$Rev$$ $$Date$$
*/
-public class SystemServiceContextImpl<T> extends AbstractContext<T> implements SystemServiceContext<T> {
+public class SystemServiceContextImpl<T> extends ServiceContextExtension<T> implements SystemServiceContext<T> {
- private Class<T> interfaze;
- private SourceWire<T> wire;
-
- public SystemServiceContextImpl(String name, Class<T> interfaze, SourceWire<T> wire, CompositeContext parent) throws CoreRuntimeException {
- super(name);
- this.interfaze = interfaze;
+ public SystemServiceContextImpl(String name, SourceWire<T> wire, CompositeContext parent) throws CoreRuntimeException {
+ this.name = name;
this.parentContext = parent;
- this.wire = wire;
- }
-
- public Scope getScope() {
- return Scope.COMPOSITE;
+ this.sourceWire = wire;
}
- @SuppressWarnings("unchecked")
- public T getService() {
- return wire.getTargetService();
- }
-
-
public InvocationHandler getHandler() {
- return null;
- }
-
- public Class<T> getInterface() {
- return interfaze;
- }
-
- public SourceWire<T> getSourceWire() {
- return wire;
- }
-
- public void setSourceWire(SourceWire<T> wire) {
- this.wire = wire;
+ throw new UnsupportedOperationException();
}
public TargetInvoker createTargetInvoker(String serviceName, Method operation) {
throw new UnsupportedOperationException();
}
+ public void prepare() {
+ // override and do nothing since system services do not proxy
+ }
}
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToAtomicContextTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToAtomicContextTestCase.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToAtomicContextTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToAtomicContextTestCase.java Sat May 20 19:30:17 2006
@@ -34,7 +34,7 @@
TargetWire<Target> targetWire = new SystemTargetWire<Target>(Target.class,targetContext);
SourceWire<Target> wire = new SystemSourceWire<Target>("service",new QualifiedName("target"),Target.class); //String referenceName, QualifiedName targetName, Class<T> businessInterface
wire.setTargetWire(targetWire);
- SystemServiceContext<Target> serviceContext = new SystemServiceContextImpl<Target>("service", Target.class, wire, context);
+ SystemServiceContext<Target> serviceContext = new SystemServiceContextImpl<Target>("service", wire, context);
context.registerContext(serviceContext);
context.start();
SystemServiceContext serviceContext2 = (SystemServiceContext) context.getContext("service");
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToReferenceContextTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToReferenceContextTestCase.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToReferenceContextTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/integration/system/ServiceContextToReferenceContextTestCase.java Sat May 20 19:30:17 2006
@@ -33,7 +33,7 @@
TargetWire<Target> targetWire = new MockTargetWire<Target>(Target.class, new TargetImpl());
SourceWire<Target> wire = new SystemSourceWire<Target>("service", new QualifiedName("reference"), Target.class); //String referenceName, QualifiedName targetName, Class<T> businessInterface
wire.setTargetWire(targetWire);
- SystemServiceContext<Target> serviceContext = new SystemServiceContextImpl<Target>("service", Target.class, wire, context);
+ SystemServiceContext<Target> serviceContext = new SystemServiceContextImpl<Target>("service", wire, context);
context.registerContext(serviceContext);
context.start();
SystemServiceContext serviceContext2 = (SystemServiceContext) context.getContext("service");
Modified: incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/core2/src/test/java/org/apache/tuscany/core/system/context/AutowireTestCase.java Sat May 20 19:30:17 2006
@@ -60,7 +60,7 @@
SourceWire<Source> wire = new SystemSourceWire<Source>("sourceService", new QualifiedName("source"), Source.class);
wire.setTargetWire(targetWire);
- SystemServiceContext<Source> serviceContext = new SystemServiceContextImpl<Source>("sourceService", Source.class, wire, parent);
+ SystemServiceContext<Source> serviceContext = new SystemServiceContextImpl<Source>("sourceService", wire, parent);
parent.registerContext(serviceContext);
parent.registerContext(context);
scopeContext.publish(new ModuleStart(this, parent));
Modified: incubator/tuscany/sandbox/jboynes/sca/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceContextExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/sandbox/jboynes/sca/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceContextExtension.java?rev=408123&r1=408122&r2=408123&view=diff
==============================================================================
--- incubator/tuscany/sandbox/jboynes/sca/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceContextExtension.java (original)
+++ incubator/tuscany/sandbox/jboynes/sca/spi/src/main/java/org/apache/tuscany/spi/extension/ServiceContextExtension.java Sat May 20 19:30:17 2006
@@ -23,7 +23,6 @@
protected SourceWire<T> sourceWire;
protected ObjectFactory<WireInvocationHandler> handlerFactory;
- // a target implementing the service exposed by the context backed by the invocation handler
private T target;
/**
@@ -41,6 +40,7 @@
}
public void setSourceWire(SourceWire<T> wire) {
+ target = null;
sourceWire = wire;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org