From 59f53a731aeb36de2bac7777cc26f24f6997afb0 Mon Sep 17 00:00:00 2001 From: antelder Date: Fri, 29 Jan 2010 11:11:09 +0000 Subject: Update to find an existing domain if the registry isn't explicitly defined git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@904461 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java | 4 ++++ .../java/org/apache/tuscany/sca/runtime/EndpointRegistry.java | 1 + .../apache/tuscany/sca/runtime/ExtensibleDomainRegistry.java | 10 ++++++++++ 3 files changed, 15 insertions(+) (limited to 'sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache') diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java index 5646916075..8cea5e1423 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/BaseEndpointRegistry.java @@ -199,4 +199,8 @@ public abstract class BaseEndpointRegistry implements EndpointRegistry, LifeCycl listeners.remove(listener); } + public String getDomainName() { + return domainURI; + } + } diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java index 6c4839018d..0c0c0f2b0e 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java @@ -66,4 +66,5 @@ public interface EndpointRegistry { void addListener(EndpointListener listener); void removeListener(EndpointListener listener); + String getDomainName(); } diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/ExtensibleDomainRegistry.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/ExtensibleDomainRegistry.java index 0a0b503206..62ba7cce8d 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/ExtensibleDomainRegistry.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/ExtensibleDomainRegistry.java @@ -64,6 +64,16 @@ public class ExtensibleDomainRegistry implements DomainRegistryFactory { URI uri = URI.create(endpointRegistryURI); String scheme = uri.getScheme(); if (scheme == null) { + + // See if there is a previously created registry for that domain + for (DomainRegistryFactory factory : factories.getDomainRegistryFactories()) { + for (EndpointRegistry endpointRegistry : factory.getEndpointRegistries()) { + if (endpointRegistry.getDomainName().equals(domainURI)) { + return endpointRegistry; + } + } + } + scheme = "vm"; endpointRegistryURI = "vm:" + endpointRegistryURI; } else { -- cgit v1.2.3