diff options
author | Markus Alexander Kuppe | 2010-11-02 10:41:11 +0000 |
---|---|---|
committer | Markus Alexander Kuppe | 2010-11-02 10:41:11 +0000 |
commit | eaaf493f6ff752698038c266b036dcea0fcc37a9 (patch) | |
tree | bb697ecaa17bd4adb0e1d91e82ab120621ebb5d6 | |
parent | a3447e33a4aa22d426c87086b20d9cb4fa75ae4f (diff) | |
download | org.eclipse.ecf-Release_3_4.tar.gz org.eclipse.ecf-Release_3_4.tar.xz org.eclipse.ecf-Release_3_4.zip |
RESOLVED - bug 277573: [RFC119] Make remote service identifiable in service registry by setting ServicePublication.ENDPOINT_IDRelease_3_4
https://bugs.eclipse.org/bugs/show_bug.cgi?id=277573
-rw-r--r-- | compendium/bundles/org.eclipse.ecf.osgi.services.distribution/src/org/eclipse/ecf/internal/osgi/services/distribution/DiscoveredServiceTrackerImpl.java | 11 |
1 files changed, 11 insertions, 0 deletions
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 de8d61fd2..9fb205104 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.IRemoteServiceEndpointDescription 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 @@ public class DiscoveredServiceTrackerImpl implements DiscoveredServiceTracker { 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 @@ public class DiscoveredServiceTrackerImpl implements DiscoveredServiceTracker { 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()), |