Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsboshev2008-09-18 08:09:18 +0000
committersboshev2008-09-18 08:09:18 +0000
commit09f07c5393b2b3acab59622e893d2a22f7194839 (patch)
tree6eeeb6c00576bf95fa24ac2a9eedeaf45cb3ec08
parent222d6911bf765c63fc7f115acbaae7817e91b04f (diff)
downloadrt.equinox.bundles-09f07c5393b2b3acab59622e893d2a22f7194839.tar.gz
rt.equinox.bundles-09f07c5393b2b3acab59622e893d2a22f7194839.tar.xz
rt.equinox.bundles-09f07c5393b2b3acab59622e893d2a22f7194839.zip
Bug 246757. [ds] Compliance with section 112.3.4 and 112.6 of R4.1 specv20080922-1815
-rw-r--r--bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java5
-rw-r--r--bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java5
-rw-r--r--bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java3
3 files changed, 10 insertions, 3 deletions
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java
index 4b3f46ab8..c080cf236 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/Reference.java
@@ -8,6 +8,7 @@
*
* Contributors:
* ProSyst Software GmbH - initial API and implementation
+ * Joerg-Christian Boehme - bug.id = 246757
*******************************************************************************/
package org.eclipse.equinox.internal.ds;
@@ -105,6 +106,10 @@ public final class Reference {
}
+ public String getTarget() {
+ return target;
+ }
+
// used in Resolver.resolveEligible()
final boolean hasProviders() {
// check whether the component's bundle has service GET permission
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java
index 1fec2ea54..a242c9aca 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/impl/ComponentContextImpl.java
@@ -8,6 +8,7 @@
*
* Contributors:
* ProSyst Software GmbH - initial API and implementation
+ * Joerg-Christian Boehme - bug.id = 246757
*******************************************************************************/
package org.eclipse.equinox.internal.ds.impl;
@@ -99,7 +100,7 @@ public class ComponentContextImpl implements ComponentContext {
}
if (serviceReference == null) {
// try to find service in the FW
- ServiceReference[] serviceReferences = scp.bc.getServiceReferences(ref.interfaceName, ref.target);
+ ServiceReference[] serviceReferences = scp.bc.getServiceReferences(ref.interfaceName, reference.getTarget());
if (serviceReferences != null && serviceReferences.length > 0) {
// the services references are sorted by
// service.reference and service.id
@@ -179,7 +180,7 @@ public class ComponentContextImpl implements ComponentContext {
}
}
}
- serviceReferences = scp.bc.getServiceReferences(ref.interfaceName, ref.target);
+ serviceReferences = scp.bc.getServiceReferences(ref.interfaceName, reference.getTarget());
if (serviceReferences != null) {
Vector theServices = new Vector(5);
Object service;
diff --git a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java
index 04cffdad4..ee7cc8a36 100644
--- a/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java
+++ b/bundles/org.eclipse.equinox.ds/src/org/eclipse/equinox/internal/ds/model/ServiceComponentProp.java
@@ -8,6 +8,7 @@
*
* Contributors:
* ProSyst Software GmbH - initial API and implementation
+ * Joerg-Christian Boehme - bug.id = 246757
*******************************************************************************/
package org.eclipse.equinox.internal.ds.model;
@@ -352,7 +353,7 @@ public class ServiceComponentProp implements PrivilegedExceptionAction {
// if there is a published service, then get the ServiceObject and call bind
try {
// get all registered services using this target filter
- serviceReferences = bc.getServiceReferences(reference.reference.interfaceName, reference.reference.target);
+ serviceReferences = bc.getServiceReferences(reference.reference.interfaceName, reference.getTarget());
} catch (Exception e) {
Activator.log.error("[SCR] Cannot get references for " + reference.reference.interfaceName, e);
throw e;

Back to the top