summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sca-java-2.x/trunk/modules/node-impl-osgi/src/main/java/org/apache/tuscany/sca/osgi/service/discovery/impl/LocalDiscoveryService.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/sca-java-2.x/trunk/modules/node-impl-osgi/src/main/java/org/apache/tuscany/sca/osgi/service/discovery/impl/LocalDiscoveryService.java b/sca-java-2.x/trunk/modules/node-impl-osgi/src/main/java/org/apache/tuscany/sca/osgi/service/discovery/impl/LocalDiscoveryService.java
index 89fd9ab853..320443c399 100644
--- a/sca-java-2.x/trunk/modules/node-impl-osgi/src/main/java/org/apache/tuscany/sca/osgi/service/discovery/impl/LocalDiscoveryService.java
+++ b/sca-java-2.x/trunk/modules/node-impl-osgi/src/main/java/org/apache/tuscany/sca/osgi/service/discovery/impl/LocalDiscoveryService.java
@@ -129,7 +129,7 @@ public class LocalDiscoveryService extends AbstractDiscoveryService implements B
}
public Object addingBundle(Bundle bundle, BundleEvent event) {
- if (bundle.getHeaders().get(Constants.FRAGMENT_HOST) != null) {
+ if (bundle.getHeaders().get(Constants.FRAGMENT_HOST) != null || bundle.getBundleId() == 0) {
// Ignore fragments
return null;
}
@@ -157,6 +157,9 @@ public class LocalDiscoveryService extends AbstractDiscoveryService implements B
// throw new ServiceRuntimeException(e);
}
}
+
+ // Add to the extenders before notifying the listeners (the endpoints may references to the config)
+ this.extenders.add(extender);
// Notify
for (ServiceDescriptions sds : extender.getRemoteServiceDescriptions()) {
@@ -167,7 +170,6 @@ public class LocalDiscoveryService extends AbstractDiscoveryService implements B
}
}
- this.extenders.add(extender);
return extender;
}