You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rs...@apache.org on 2008/02/19 10:41:29 UTC
svn commit: r629049 [3/3] - in /incubator/tuscany/java/sca:
itest/osgi-contribution/contribution-test/
itest/osgi-contribution/contribution-test/src/test/resources/osgi/felix/
itest/osgi-implementation/
itest/osgi-implementation/src/main/java/conversat...
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: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org