Fixed regression caused by fix for
https://bugs.eclipse.org/bugs/show_bug.cgi?id=578222
Change-Id: I833dc8875261af80576c082265f28a11a8b5bd2b
diff --git a/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/osgi/services/remoteserviceadmin/RemoteServiceAdmin.java b/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/osgi/services/remoteserviceadmin/RemoteServiceAdmin.java
index 7c13c42..7ca657e 100644
--- a/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/osgi/services/remoteserviceadmin/RemoteServiceAdmin.java
+++ b/osgi/bundles/org.eclipse.ecf.osgi.services.remoteserviceadmin/src/org/eclipse/ecf/osgi/services/remoteserviceadmin/RemoteServiceAdmin.java
@@ -265,20 +265,23 @@
// verifyExportedInterfaces
if (!validExportedInterfaces(serviceReference, exportedInterfaces))
return Collections.EMPTY_LIST;
+
+ // Get all intents (service.intents, service.exported.intents,
+ // service.exported.intents.extra)
+ final String[] serviceIntents = PropertiesUtil.getServiceIntents(serviceReference, overridingProperties);
+
// Get optional exported configs
String[] ecs = PropertiesUtil.getStringArrayFromPropertyValue(
overridingProperties.get(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_EXPORTED_CONFIGS));
if (ecs == null) {
ecs = PropertiesUtil.getStringArrayFromPropertyValue(serviceReference
.getProperty(org.osgi.service.remoteserviceadmin.RemoteConstants.SERVICE_EXPORTED_CONFIGS));
- if (ecs == null) {
+ // we only set service exported configs to a default if there are no service intents specified
+ if (ecs == null && (serviceIntents == null || serviceIntents.length == 0)) {
ecs = DEFAULT_SERVICE_EXPORTED_CONFIGS;
}
}
final String[] exportedConfigs = ecs;
- // Get all intents (service.intents, service.exported.intents,
- // service.exported.intents.extra)
- final String[] serviceIntents = PropertiesUtil.getServiceIntents(serviceReference, overridingProperties);
// Create result registrations. This collection will be returned
Collection<ExportRegistration> resultRegistrations = new ArrayList<ExportRegistration>();