You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jb...@apache.org on 2007/03/08 17:34:48 UTC
svn commit: r516093 - in /incubator/tuscany/java/sca/kernel:
core/src/main/java/org/apache/tuscany/core/component/
core/src/main/java/org/apache/tuscany/core/idl/java/
core/src/main/java/org/apache/tuscany/core/runtime/
core/src/test/java/org/apache/tu...
Author: jboynes
Date: Thu Mar 8 08:34:46 2007
New Revision: 516093
URL: http://svn.apache.org/viewvc?view=rev&rev=516093
Log:
make JavaServiceContract typesafe by adding a type param for the interface it represents
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManager.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManagerImpl.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/idl/java/JavaInterfaceProcessorRegistryImpl.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/DataBindingJavaInterfaceProcessorTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/idl/java/ConversationalIntrospectionTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKInvocationHandlerProxyTestCase.java
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/InterfaceJavaIntrospector.java
incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/JavaServiceContract.java
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManager.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManager.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManager.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManager.java Thu Mar 8 08:34:46 2007
@@ -24,7 +24,7 @@
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.RegistrationException;
import org.apache.tuscany.spi.event.RuntimeEventListener;
-import org.apache.tuscany.spi.model.ServiceContract;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
/**
* Responsible for tracking and managing the component tree for a runtime instance. The tree corresponds to components
@@ -60,7 +60,7 @@
* @param instance the Object that will become the component's implementation
* @throws RegistrationException
*/
- <S, I extends S> void registerJavaObject(URI uri, ServiceContract<S> service, I instance)
+ <S, I extends S> void registerJavaObject(URI uri, JavaServiceContract<S> service, I instance)
throws RegistrationException;
/**
@@ -72,7 +72,7 @@
* @param instance the Object that will become the component's implementation
* @throws RegistrationException
*/
- <S, I extends S> void registerJavaObject(URI uri, List<ServiceContract<?>> services, I instance)
+ <S, I extends S> void registerJavaObject(URI uri, List<JavaServiceContract<?>> services, I instance)
throws RegistrationException;
/**
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManagerImpl.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManagerImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentManagerImpl.java Thu Mar 8 08:34:46 2007
@@ -30,6 +30,7 @@
import org.apache.tuscany.spi.event.Event;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.services.management.TuscanyManagementService;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.core.resolver.AutowireResolver;
@@ -68,7 +69,7 @@
}
}
- public <S, I extends S> void registerJavaObject(URI uri, ServiceContract<S> service, I instance)
+ public <S, I extends S> void registerJavaObject(URI uri, JavaServiceContract<S> service, I instance)
throws RegistrationException {
SystemSingletonAtomicComponent<S, I> component =
new SystemSingletonAtomicComponent<S, I>(uri, service, instance);
@@ -80,7 +81,7 @@
}
}
- public <S, I extends S> void registerJavaObject(URI uri, List<ServiceContract<?>> services, I instance)
+ public <S, I extends S> void registerJavaObject(URI uri, List<JavaServiceContract<?>> services, I instance)
throws RegistrationException {
SystemSingletonAtomicComponent<S, I> component =
new SystemSingletonAtomicComponent<S, I>(uri, services, instance);
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponent.java Thu Mar 8 08:34:46 2007
@@ -23,6 +23,7 @@
import java.util.List;
import org.apache.tuscany.spi.ObjectCreationException;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.TargetDestructionException;
import org.apache.tuscany.spi.component.TargetInitializationException;
@@ -46,13 +47,13 @@
private T instance;
private List<ServiceContract> serviceContracts = new ArrayList<ServiceContract>();
- public SystemSingletonAtomicComponent(URI name, ServiceContract<S> contract, T instance) {
+ public SystemSingletonAtomicComponent(URI name, JavaServiceContract<S> contract, T instance) {
super(name);
this.instance = instance;
this.serviceContracts.add(contract);
}
- public SystemSingletonAtomicComponent(URI name, List<ServiceContract<?>> services, T instance) {
+ public SystemSingletonAtomicComponent(URI name, List<JavaServiceContract<?>> services, T instance) {
super(name);
this.instance = instance;
for (ServiceContract<?> contract : services) {
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/idl/java/JavaInterfaceProcessorRegistryImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/idl/java/JavaInterfaceProcessorRegistryImpl.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/idl/java/JavaInterfaceProcessorRegistryImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/idl/java/JavaInterfaceProcessorRegistryImpl.java Thu Mar 8 08:34:46 2007
@@ -67,7 +67,7 @@
processors.remove(processor);
}
- public <T> JavaServiceContract introspect(Class<T> type) throws InvalidServiceContractException {
+ public <T> JavaServiceContract<T> introspect(Class<T> type) throws InvalidServiceContractException {
Class<?> callbackClass = null;
Callback callback = type.getAnnotation(Callback.class);
if (callback != null && !Void.class.equals(callback.value())) {
@@ -78,9 +78,9 @@
return introspect(type, callbackClass);
}
- public <I, C> JavaServiceContract introspect(Class<I> type, Class<C> callback)
+ public <I, C> JavaServiceContract<I> introspect(Class<I> type, Class<C> callback)
throws InvalidServiceContractException {
- JavaServiceContract contract = new JavaServiceContract();
+ JavaServiceContract<I> contract = new JavaServiceContract<I>();
contract.setInterfaceName(getBaseName(type));
contract.setInterfaceClass(type);
boolean remotable = type.isAnnotationPresent(Remotable.class);
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java Thu Mar 8 08:34:46 2007
@@ -39,9 +39,9 @@
import org.apache.tuscany.spi.event.RuntimeEventListener;
import org.apache.tuscany.spi.idl.InvalidServiceContractException;
import org.apache.tuscany.spi.idl.java.JavaInterfaceProcessorRegistry;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.spi.loader.LoaderException;
import org.apache.tuscany.spi.model.ComponentDefinition;
-import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.resolver.ResolutionException;
import org.apache.tuscany.spi.services.management.TuscanyManagementService;
@@ -244,11 +244,10 @@
registerSystemComponent(AUTOWIRE_RESOLVER_URI, AutowireResolver.class, resolver);
}
- @SuppressWarnings({"unchecked"})
protected <S, I extends S> void registerSystemComponent(URI uri, Class<S> type, I component)
throws InitializationException {
try {
- ServiceContract contract = interfaceProcessorRegistry.introspect(type);
+ JavaServiceContract<S> contract = interfaceProcessorRegistry.introspect(type);
componentManager.registerJavaObject(uri, contract, component);
} catch (RegistrationException e) {
throw new InitializationException(e);
@@ -260,9 +259,9 @@
protected <I> void registerSystemComponent(URI uri, List<Class<?>> types, I component)
throws InitializationException {
try {
- List<ServiceContract<?>> contracts = new ArrayList<ServiceContract<?>>();
+ List<JavaServiceContract<?>> contracts = new ArrayList<JavaServiceContract<?>>();
for (Class<?> type : types) {
- contracts.add(this.interfaceProcessorRegistry.introspect(type));
+ contracts.add(interfaceProcessorRegistry.introspect(type));
}
componentManager.registerJavaObject(uri, contracts, component);
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java Thu Mar 8 08:34:46 2007
@@ -23,7 +23,7 @@
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.DuplicateNameException;
-import org.apache.tuscany.spi.model.ServiceContract;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import junit.framework.TestCase;
@@ -36,7 +36,7 @@
public void testRegistration() throws Exception {
MockComponent instance = new MockComponent();
URI uri = URI.create("foo");
- ServiceContract<MockComponent> contract = new ServiceContract<MockComponent>(MockComponent.class) {
+ JavaServiceContract<MockComponent> contract = new JavaServiceContract<MockComponent>(MockComponent.class) {
};
componentManager.registerJavaObject(uri, contract, instance);
Component component = componentManager.getComponent(URI.create("foo"));
@@ -48,7 +48,7 @@
public void testDuplicateRegistration() throws Exception {
MockComponent instance = new MockComponent();
URI uri = URI.create("foo");
- ServiceContract<MockComponent> contract = new ServiceContract<MockComponent>(MockComponent.class) {
+ JavaServiceContract<MockComponent> contract = new JavaServiceContract<MockComponent>(MockComponent.class) {
};
componentManager.registerJavaObject(uri, contract, instance);
try {
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java Thu Mar 8 08:34:46 2007
@@ -23,7 +23,7 @@
import java.util.List;
import org.apache.tuscany.spi.component.TargetException;
-import org.apache.tuscany.spi.model.ServiceContract;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import junit.framework.TestCase;
@@ -33,7 +33,7 @@
public class SystemSingletonAtomicComponentTestCase extends TestCase {
public void testGetInstance() throws TargetException {
- ServiceContract<Foo> contract = new ServiceContract<Foo>(Foo.class) {
+ JavaServiceContract<Foo> contract = new JavaServiceContract<Foo>(Foo.class) {
};
FooImpl foo = new FooImpl();
@@ -44,10 +44,10 @@
public void testGetInstanceMultipleServices() throws TargetException {
FooImpl foo = new FooImpl();
- List<ServiceContract<?>> services = new ArrayList<ServiceContract<?>>();
- services.add(new ServiceContract<Foo>(Foo.class) {
+ List<JavaServiceContract<?>> services = new ArrayList<JavaServiceContract<?>>();
+ services.add(new JavaServiceContract<Foo>(Foo.class) {
});
- services.add(new ServiceContract<Bar>(Bar.class) {
+ services.add(new JavaServiceContract<Bar>(Bar.class) {
});
SystemSingletonAtomicComponent<Foo, FooImpl> component =
new SystemSingletonAtomicComponent<Foo, FooImpl>(URI.create("foo"), services, foo);
@@ -55,7 +55,7 @@
}
public void testOptimizable() {
- ServiceContract<Foo> contract = new ServiceContract<Foo>(Foo.class) {
+ JavaServiceContract<Foo> contract = new JavaServiceContract<Foo>(Foo.class) {
};
FooImpl foo = new FooImpl();
SystemSingletonAtomicComponent<Foo, FooImpl> component =
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/DataBindingJavaInterfaceProcessorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/DataBindingJavaInterfaceProcessorTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/DataBindingJavaInterfaceProcessorTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/databinding/impl/DataBindingJavaInterfaceProcessorTestCase.java Thu Mar 8 08:34:46 2007
@@ -49,11 +49,11 @@
}
/**
- * @throws InvalidServiceContractException
+ * @throws InvalidServiceContractException indicates an error occurs
*/
public final void testVisitInterface() throws InvalidServiceContractException {
DataBindingJavaInterfaceProcessor processor = new DataBindingJavaInterfaceProcessor();
- JavaServiceContract contract = new JavaServiceContract(MockInterface.class);
+ JavaServiceContract<MockInterface> contract = new JavaServiceContract<MockInterface>(MockInterface.class);
Map<String, Operation<Type>> operations = new HashMap<String, Operation<Type>>();
Operation<Type> operation = new Operation<Type>("call", null, null, null, false, null, NO_CONVERSATION);
Operation<Type> operation1 = new Operation<Type>("call1", null, null, null, false, null, NO_CONVERSATION);
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/deployer/BootstrapDeployerTestCase.java Thu Mar 8 08:34:46 2007
@@ -29,6 +29,7 @@
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.idl.java.JavaInterfaceProcessorRegistry;
+import org.apache.tuscany.spi.idl.java.JavaServiceContract;
import org.apache.tuscany.spi.loader.LoaderException;
import org.apache.tuscany.spi.model.BindingDefinition;
import org.apache.tuscany.spi.model.ComponentDefinition;
@@ -39,7 +40,6 @@
import org.apache.tuscany.spi.model.Property;
import org.apache.tuscany.spi.model.PropertyValue;
import org.apache.tuscany.spi.model.ReferenceDefinition;
-import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.model.ServiceDefinition;
import junit.framework.TestCase;
@@ -156,7 +156,7 @@
ComponentManager manager = new ComponentManagerImpl(null, resolver);
Connector connector = new ConnectorImpl(manager);
JavaInterfaceProcessorRegistry registry = new JavaInterfaceProcessorRegistryImpl();
- ServiceContract contract = registry.introspect(ComponentManager.class);
+ JavaServiceContract<ComponentManager> contract = registry.introspect(ComponentManager.class);
manager.registerJavaObject(URI.create("ComponentManager"), contract, manager);
NullMonitorFactory monitorFactory = new NullMonitorFactory();
Bootstrapper bootstrapper =
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/idl/java/ConversationalIntrospectionTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/idl/java/ConversationalIntrospectionTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/idl/java/ConversationalIntrospectionTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/idl/java/ConversationalIntrospectionTestCase.java Thu Mar 8 08:34:46 2007
@@ -34,7 +34,7 @@
private JavaInterfaceProcessorRegistryImpl registry = new JavaInterfaceProcessorRegistryImpl();
public void testServiceContractConversationalInformationIntrospection() throws Exception {
- JavaServiceContract contract = registry.introspect(Foo.class);
+ JavaServiceContract<Foo> contract = registry.introspect(Foo.class);
assertTrue(contract.isConversational());
int seq = contract.getOperations().get("operation").getConversationSequence();
assertEquals(Operation.CONVERSATION_CONTINUE, seq);
@@ -52,7 +52,7 @@
}
public void testNonConversationalInformationIntrospection() throws Exception {
- JavaServiceContract contract = registry.introspect(NonConversationalFoo.class);
+ JavaServiceContract<NonConversationalFoo> contract = registry.introspect(NonConversationalFoo.class);
assertFalse(contract.isConversational());
int seq = contract.getOperations().get("operation").getConversationSequence();
assertEquals(Operation.NO_CONVERSATION, seq);
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKInvocationHandlerProxyTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKInvocationHandlerProxyTestCase.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKInvocationHandlerProxyTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/wire/jdk/JDKInvocationHandlerProxyTestCase.java Thu Mar 8 08:34:46 2007
@@ -47,7 +47,7 @@
*/
public void testDifferentInterface() throws Throwable {
Wire wire = new WireImpl();
- JavaServiceContract contract = registry.introspect(Target.class);
+ JavaServiceContract<Target> contract = registry.introspect(Target.class);
for (Operation<?> operation : contract.getOperations().values()) {
InvocationChain chain = new InvocationChainImpl(operation);
wire.addInvocationChain(operation, chain);
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/InterfaceJavaIntrospector.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/InterfaceJavaIntrospector.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/InterfaceJavaIntrospector.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/InterfaceJavaIntrospector.java Thu Mar 8 08:34:46 2007
@@ -33,7 +33,7 @@
* @param type the interface to inspect
* @return a JavaServiceContract corresponding to the Java interface
*/
- <I> JavaServiceContract introspect(Class<I> type) throws InvalidServiceContractException;
+ <I> JavaServiceContract<I> introspect(Class<I> type) throws InvalidServiceContractException;
/**
* Introspect a Java interface and return a service contract definition.
@@ -42,5 +42,5 @@
* @param callback the callback interface to inspec
* @return a JavaServiceContract corresponding to the Java interface
*/
- <I, C> JavaServiceContract introspect(Class<I> type, Class<C> callback) throws InvalidServiceContractException;
+ <I, C> JavaServiceContract<I> introspect(Class<I> type, Class<C> callback) throws InvalidServiceContractException;
}
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/JavaServiceContract.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/JavaServiceContract.java?view=diff&rev=516093&r1=516092&r2=516093
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/JavaServiceContract.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/idl/java/JavaServiceContract.java Thu Mar 8 08:34:46 2007
@@ -27,12 +27,12 @@
*
* @version $Rev$ $Date$
*/
-public class JavaServiceContract extends ServiceContract<Type> {
+public class JavaServiceContract<I> extends ServiceContract<Type> {
public JavaServiceContract() {
}
- public JavaServiceContract(Class<?> interfaceClass) {
+ public JavaServiceContract(Class<I> interfaceClass) {
super(interfaceClass);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org