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