RESOLVED - bug 277573: [RFC119] Make remote service identifiable in service registry by setting ServicePublication.ENDPOINT_ID
https://bugs.eclipse.org/bugs/show_bug.cgi?id=277573
diff --git a/compendium/bundles/org.eclipse.ecf.osgi.services.distribution/src/org/eclipse/ecf/internal/osgi/services/distribution/DiscoveredServiceTrackerImpl.java b/compendium/bundles/org.eclipse.ecf.osgi.services.distribution/src/org/eclipse/ecf/internal/osgi/services/distribution/DiscoveredServiceTrackerImpl.java
index de8d61f..9fb2051 100644
--- a/compendium/bundles/org.eclipse.ecf.osgi.services.distribution/src/org/eclipse/ecf/internal/osgi/services/distribution/DiscoveredServiceTrackerImpl.java
+++ b/compendium/bundles/org.eclipse.ecf.osgi.services.distribution/src/org/eclipse/ecf/internal/osgi/services/distribution/DiscoveredServiceTrackerImpl.java
@@ -32,6 +32,7 @@
 import org.eclipse.ecf.osgi.services.discovery.RemoteServiceEndpointDescription;
 import org.eclipse.ecf.osgi.services.discovery.RemoteServicePublication;
 import org.eclipse.ecf.osgi.services.discovery.ServiceEndpointDescription;
+import org.eclipse.ecf.osgi.services.discovery.ServicePublication;
 import org.eclipse.ecf.osgi.services.distribution.IDistributionConstants;
 import org.eclipse.ecf.osgi.services.distribution.IProxyContainerFinder;
 import org.eclipse.ecf.osgi.services.distribution.IProxyDistributionListener;
@@ -60,6 +61,7 @@
 			org.eclipse.ecf.remoteservice.Constants.SERVICE_ID,
 			org.eclipse.ecf.remoteservice.Constants.SERVICE_CONTAINER_ID,
 			org.eclipse.ecf.remoteservice.Constants.SERVICE_RANKING,
+			IDistributionConstants.SERVICE_EXPORTED_CONFIGS,
 			RemoteServicePublication.ENDPOINT_ID,
 			RemoteServicePublication.ENDPOINT_INTERFACE_NAME,
 			RemoteServicePublication.ENDPOINT_LOCATION,
@@ -686,6 +688,15 @@
 				props.put(propKeys[i], rsReference.getProperty(propKeys[i]));
 			}
 		}
+
+		// make the service identifiable by consumers
+		// especially org.eclipse.ecf.remoteservice.ui.dosgi
+		final ID endpointId = (ID) rsReference
+				.getProperty(org.eclipse.ecf.remoteservice.Constants.SERVICE_CONTAINER_ID);
+		final Long serviceId = (Long) rsReference
+				.getProperty(org.eclipse.ecf.remoteservice.Constants.SERVICE_ID);
+		props.put(ServicePublication.ENDPOINT_ID, endpointId + "#" + serviceId); //$NON-NLS-1$
+
 		// finally add service.imported.configs
 		addImportedConfigsProperties(
 				getContainerTypeDescription(rsContainer.getContainer()),