summaryrefslogtreecommitdiffstats
path: root/branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java b/branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java
index a7f148cdda..aaa4c6ee95 100644
--- a/branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java
+++ b/branches/sca-equinox/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/SCADomain.java
@@ -20,6 +20,7 @@ package org.apache.tuscany.sca.host.embedded;
import java.lang.reflect.Constructor;
+import org.apache.tuscany.sca.extensibility.ServiceDeclaration;
import org.apache.tuscany.sca.extensibility.ServiceDiscovery;
import org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain;
import org.apache.tuscany.sca.host.embedded.management.ComponentManager;
@@ -174,9 +175,9 @@ public abstract class SCADomain {
final ClassLoader runtimeClassLoader = SCADomain.class.getClassLoader();
final ClassLoader applicationClassLoader = Thread.currentThread().getContextClassLoader();
- Class<?> implClass = ServiceDiscovery.getInstance().loadFirstServiceClass(SCADomain.class);
+ ServiceDeclaration implDeclaration = ServiceDiscovery.getInstance().getFirstServiceDeclaration(SCADomain.class.getName());
- if (implClass == null) {
+ if (implDeclaration == null) {
// Create a default SCA domain implementation
domain =
@@ -187,6 +188,7 @@ public abstract class SCADomain {
// Create an instance of the discovered SCA domain implementation
Constructor<?> constructor = null;
try {
+ Class<?> implClass = implDeclaration.loadClass();
constructor =
implClass.getConstructor(ClassLoader.class,
ClassLoader.class,
@@ -204,6 +206,7 @@ public abstract class SCADomain {
composites);
} else {
+ Class<?> implClass = implDeclaration.loadClass();
constructor = implClass.getConstructor(ClassLoader.class, String.class);
domain = (SCADomain)constructor.newInstance(runtimeClassLoader, domainURI);
}