You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2007/03/28 01:08:31 UTC

svn commit: r523110 - /incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java

Author: rfeng
Date: Tue Mar 27 16:08:30 2007
New Revision: 523110

URL: http://svn.apache.org/viewvc?view=rev&rev=523110
Log:
Add a temp fix to create the ServiceReference

Modified:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java?view=diff&rev=523110&r1=523109&r2=523110
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/component/ComponentContextImpl.java Tue Mar 27 16:08:30 2007
@@ -25,6 +25,9 @@
 import org.osoa.sca.ServiceRuntimeException;
 
 import org.apache.tuscany.api.TuscanyRuntimeException;
+import org.apache.tuscany.spi.ObjectFactory;
+import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.Component;
 
 /**
  * Implementation of ComponentContext that delegates to a ComponentContextProvider.
@@ -79,7 +82,9 @@
     }
 
     public <B> ServiceReference<B> createSelfReference(Class<B> businessInterface) {
-        return null;
+        // FIXME: How to get the ObjectFactory?
+        ObjectFactory<B> factory = ((AtomicComponent) component).createObjectFactory();
+        return new ServiceReferenceImpl<B>(businessInterface, factory);
     }
 
     public <B> ServiceReference<B> createSelfReference(Class<B> businessInterface, String serviceName) {



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