Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientActivator.java
 Tue Feb 19 01:41:25 2008
@@ -29,11 +29,6 @@
 import conversation.client.ConversationalClient;
 import conversation.client.ConversationalClientStatefulImpl;
 import conversation.client.ConversationalClientStatelessImpl;
-import conversation.referenceclient.ConversationalReferenceClient;
-import conversation.referenceclient.ConversationalReferenceClientImpl;
-import conversation.service.ConversationalService;
-import conversation.service.ConversationalServiceStatefulImpl;
-import conversation.service.ConversationalServiceStatelessImpl;
 
 /*
  * OSGi bundle activator for conversation tests

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/client/ConversationalClientServiceFactory.java
 Tue Feb 19 01:41:25 2008
@@ -108,7 +108,7 @@
     }
 
     public void ungetService(Bundle bundle, ServiceRegistration reg, Object 
obj) {
-        bundle.getBundleContext().ungetService(reg.getReference());
+       
     }
     
     private ServiceReference getServiceReference(String name, String filter) 
throws Exception {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/conversation/service/ConversationalServiceFactory.java
 Tue Feb 19 01:41:25 2008
@@ -44,7 +44,7 @@
     }
 
     public void ungetService(Bundle bundle, ServiceRegistration reg, Object 
obj) {
-        bundle.getBundleContext().ungetService(reg.getReference());
+       
     }
     
    

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -36,7 +36,7 @@
     private Retailer retailer2;
     private Retailer retailer3;
     
-    private ArrayList<String> outstandingOrders = new ArrayList<String>();
+    private static ArrayList<String> outstandingOrders = new 
ArrayList<String>();
     
     public OSGiCustomerComponentImpl() {
         System.out.println("Created OSGiCustomerComponentImpl " + this);
@@ -47,7 +47,7 @@
     }
     
     protected void unsetRetailer1(Retailer retailer1) {
-       this.retailer1 = null;
+       // this.retailer1 = null;
     }
     
     
@@ -56,32 +56,34 @@
     }
     
     protected void unsetRetailer2(Retailer retailer2) {
-       this.retailer2 = null;
+       // this.retailer2 = null;
     }
     
-    protected void setRetailer3(Retailer retailer2) {
-        this.retailer3 = retailer2;
+    protected void setRetailer3(Retailer retailer3) {
+        this.retailer3 = retailer3;
     }
     
-    protected void unsetRetailer3(Retailer retailer2) {
-        this.retailer3 = null;
+    protected void unsetRetailer3(Retailer retailer3) {
+        // this.retailer3 = null;
     }
-   
+    
+
     public void purchaseBooks() {
-       System.out.println("OSGiCustomerComponentImpl.purchaseBooks");
+       System.out.println("OSGiCustomerComponentImpl.purchaseBooks, retailer1 
is " + retailer1);
         outstandingOrders.add("Order, submitted (amazon.com), fulfilled, 
shipped (ParcelForce)");
         retailer1.submitOrder("Order");
     }
     
     public void purchaseGames() {
-        System.out.println("OSGiCustomerComponentImpl.purchaseGames");
+        System.out.println("OSGiCustomerComponentImpl.purchaseGames, retailer2 
is " + retailer2);
         outstandingOrders.add("Order, submitted (play.com), fulfilled, shipped 
(ParcelForce)");
         
         retailer2.submitOrder("Order");
     }
     
     public void purchaseGoods() {
-        retailer3.submitOrder("Order");
+       System.out.println("OSGiCustomerComponentImpl.purchaseGames, retailer3 
is " + retailer3);
+       retailer3.submitOrder("Order");
     }
     
     public void notifyShipment(String order) {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/customer/OSGiCustomerWithQueryComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -47,7 +47,7 @@
     }
     
     protected void unsetRetailer(Retailer retailer) {
-       this.retailer = null;
+       // this.retailer = null;
     }
     
     
@@ -56,7 +56,7 @@
     }
     
     protected void unsetRetailerQuery(RetailerQuery retailerQuery) {
-        this.retailerQuery = null;
+        // this.retailerQuery = null;
     }
     
     public void purchaseBooks() {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -36,7 +36,7 @@
     }
     
     protected void unsetWarehouse(Warehouse warehouse) {
-       this.warehouse = null;
+       // this.warehouse = null;
     }
     
     public void submitOrder(String order) {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/retailer/OSGiRetailerWithQueryComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -38,7 +38,7 @@
     }
     
     protected void unsetWarehouse(Warehouse warehouse) {
-       this.warehouse = null;
+       // this.warehouse = null;
     }
     
     protected void setWarehouseQuery(WarehouseQuery warehouseQuery) {
@@ -46,7 +46,7 @@
     }
     
     protected void unsetWarehouseQuery(WarehouseQuery warehouse) {
-        this.warehouseQuery = null;
+        // this.warehouseQuery = null;
     }
     
     public void submitOrder(String order) {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/shipper/OSGiShipperComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -36,7 +36,7 @@
     }
     
     protected void unsetCustomer(Customer customer) {
-       this.customer = null;
+       // this.customer = null;
     }
     
     public void processShipment(String order) {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/main/java/supplychain/warehouse/OSGiWarehouseComponentImpl.java
 Tue Feb 19 01:41:25 2008
@@ -36,7 +36,7 @@
     }
     
     protected void unsetShipper(Shipper shipper) {
-       this.shipper = null;
+       // this.shipper = null;
     }
     
     public void fulfillOrder(String order) {

Modified: 
incubator/tuscany/java/sca/itest/osgi-implementation/src/test/resources/osgi/felix/felix.config.properties
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/osgi-implementation/src/test/resources/osgi/felix/felix.config.properties?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/itest/osgi-implementation/src/test/resources/osgi/felix/felix.config.properties
 (original)
+++ 
incubator/tuscany/java/sca/itest/osgi-implementation/src/test/resources/osgi/felix/felix.config.properties
 Tue Feb 19 01:41:25 2008
@@ -22,16 +22,16 @@
 org.osgi.framework.system.packages=org.osgi.framework; version=1.3.0, \
  org.osgi.service.packageadmin; version=1.2.0, \
  org.osgi.service.startlevel; version=1.0.0, \
- org.osgi.service.url; version=1.0.0
+ org.osgi.service.url; version=1.0.0 \
+ org.osgi.util.tracker; version=1.3.2 
 
 
 felix.auto.start.1= \
     
"file://${FELIX_DIR}/org.apache.felix.shell/1.0.0/org.apache.felix.shell-1.0.0.jar"
 \
     
"file://${FELIX_DIR}/org.apache.felix.shell.tui/1.0.0/org.apache.felix.shell.tui-1.0.0.jar"
 \
-    
"file://${FELIX_DIR}/org.apache.felix.bundlerepository/1.0.0/org.apache.felix.bundlerepository-1.0.0.jar"
 \
-    
"file://${FELIX_DIR}/org.apache.felix.scr/0.9.0-SNAPSHOT/org.apache.felix.scr-0.9.0-SNAPSHOT.jar"
 \
-    
"file://${FELIX_DIR}/org.apache.felix.log/0.9.0-incubator-SNAPSHOT/org.apache.felix.log-0.9.0-incubator-SNAPSHOT.jar"
 \
-    
"file://${FELIX_DIR}/org.apache.felix.configadmin/0.9.0-SNAPSHOT/org.apache.felix.configadmin-0.9.0-SNAPSHOT.jar"
 
+    
"file://${FELIX_DIR}/org.apache.felix.bundlerepository/1.0.2/org.apache.felix.bundlerepository-1.0.2.jar"
 \
+    
"file://${FELIX_DIR}/org.apache.felix.scr/1.0.0/org.apache.felix.scr-1.0.0.jar" 
\
+    
"file://${FELIX_DIR}/org.apache.felix.configadmin/1.0.0/org.apache.felix.configadmin-1.0.0.jar"
 
 
 
 felix.startlevel.framework=1
@@ -40,5 +40,5 @@
 #
 # Bundle config properties.
 #
-org.osgi.service.http.port=8085
+org.osgi.service.http.port=8080
 obr.shell.telnet=on

Modified: incubator/tuscany/java/sca/modules/contribution-osgi/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-osgi/pom.xml?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution-osgi/pom.xml (original)
+++ incubator/tuscany/java/sca/modules/contribution-osgi/pom.xml Tue Feb 19 
01:41:25 2008
@@ -50,7 +50,7 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.main</artifactId>
-            <version>1.0.1</version>
+            <version>1.1.0-SNAPSHOT</version>
         </dependency>
 
 

Modified: incubator/tuscany/java/sca/modules/implementation-osgi/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-osgi/pom.xml?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/implementation-osgi/pom.xml (original)
+++ incubator/tuscany/java/sca/modules/implementation-osgi/pom.xml Tue Feb 19 
01:41:25 2008
@@ -35,7 +35,7 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.main</artifactId>
-            <version>1.0.1</version>
+            <version>1.1.0-SNAPSHOT</version>
         </dependency>
 
 

Modified: 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/invocation/OSGiInstanceWrapper.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/invocation/OSGiInstanceWrapper.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/invocation/OSGiInstanceWrapper.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/implementation-osgi/src/main/java/org/apache/tuscany/sca/implementation/osgi/invocation/OSGiInstanceWrapper.java
 Tue Feb 19 01:41:25 2008
@@ -121,11 +121,10 @@
         }
         
         InstanceInfo<T> instanceInfo = new InstanceInfo<T>();
-        
-        instanceInfo.osgiServiceReference = 
provider.getOSGiServiceReference(service);        
+               
         instanceInfo.refBundleContext = refBundle.getBundleContext();
 
-        instanceInfo.osgiInstance = getInstanceObject(instanceInfo);
+        instanceInfo.osgiInstance = getInstanceObject(instanceInfo, service);
         
         try {
 
@@ -196,8 +195,23 @@
     }
     
     @SuppressWarnings("unchecked")
-    private T getInstanceObject(InstanceInfo<T> instanceInfo) {
-        return 
(T)instanceInfo.refBundleContext.getService(instanceInfo.osgiServiceReference);
+    private T getInstanceObject(InstanceInfo<T> instanceInfo, ComponentService 
service) {
+
+       /** 
+        * Since implementation.osgi is not well integrated with the OSGi 
lifecycle
+        * it is possible that the service is deactivated before the service 
instance
+        * is obtained when using declarative services. Retry in this case.  
+        */
+       int maxRetries = 10;
+       for (int i = 0; i < maxRetries; i++) {
+          instanceInfo.osgiServiceReference = 
provider.getOSGiServiceReference(service); 
+          if (instanceInfo.osgiServiceReference == null)
+                 return null;
+          T obj = 
(T)instanceInfo.refBundleContext.getService(instanceInfo.osgiServiceReference);
+          if (obj != null)
+                 return obj;
+       }
+       return null;
     }
     
     private Bundle getDummyReferenceBundle() throws 
TargetInitializationException {

Modified: incubator/tuscany/java/sca/modules/osgi-runtime/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/osgi-runtime/pom.xml?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/osgi-runtime/pom.xml (original)
+++ incubator/tuscany/java/sca/modules/osgi-runtime/pom.xml Tue Feb 19 01:41:25 
2008
@@ -35,7 +35,7 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.main</artifactId>
-            <version>1.0.1</version>
+            <version>1.1.0-SNAPSHOT</version>
         </dependency>
 
 

Modified: 
incubator/tuscany/java/sca/modules/osgi-runtime/src/main/java/org/apache/tuscany/sca/osgi/runtime/FelixRuntime.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/osgi-runtime/src/main/java/org/apache/tuscany/sca/osgi/runtime/FelixRuntime.java?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/osgi-runtime/src/main/java/org/apache/tuscany/sca/osgi/runtime/FelixRuntime.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/osgi-runtime/src/main/java/org/apache/tuscany/sca/osgi/runtime/FelixRuntime.java
 Tue Feb 19 01:41:25 2008
@@ -90,6 +90,7 @@
                 "org.osgi.service.packageadmin; version=1.2.0, " +
                 "org.osgi.service.startlevel; version=1.0.0, " +
                 "org.osgi.service.url; version=1.0.0, " +
+                "org.osgi.util.tracker; version=1.3.2, " +
                 "org.osoa.sca.annotations; version=1.0.0, " +
                 "org.osoa.sca; version=1.0.0");
         
@@ -97,6 +98,12 @@
         try {
             Constructor felixConstructor = 
felixClass.getConstructor(Map.class, List.class);
             List<BundleActivator> activators = new 
ArrayList<BundleActivator>();
+
+            Class<?> autoActivatorClass = 
cl.loadClass("org.apache.felix.main.AutoActivator");
+            Constructor autoActivatorConstructor = 
autoActivatorClass.getConstructor(Map.class);
+            BundleActivator autoActivator = 
(BundleActivator)autoActivatorConstructor.newInstance(props);            
+            activators.add(autoActivator);
+
             felix = felixConstructor.newInstance(props, activators);
             ((Bundle)felix).start();
             bundleContext = ((Bundle)felix).getBundleContext();

Modified: incubator/tuscany/java/sca/samples/osgi-supplychain/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/osgi-supplychain/pom.xml?rev=629049&r1=629048&r2=629049&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/osgi-supplychain/pom.xml (original)
+++ incubator/tuscany/java/sca/samples/osgi-supplychain/pom.xml Tue Feb 19 
01:41:25 2008
@@ -33,7 +33,7 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.main</artifactId>
-            <version>1.0.1</version>
+            <version>1.1.0-SNAPSHOT</version>
         </dependency>
 
         <dependency>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to