From 23bc8ca050d93d3a25f16485181470a9276b2649 Mon Sep 17 00:00:00 2001 From: antelder Date: Wed, 18 May 2011 09:38:01 +0000 Subject: Updates to match the DomainRegistry changes to rename addListener/removeListener to be addEndpointListener/removeEndpointListener as there are now multiple types of listener, and change the running composite methods to use the composite uri instead of its QName git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1124143 13f79535-47bb-0310-9956-ffa450edef68 --- .../hazelcast/HazelcastDomainRegistry.java | 79 +++++++++++----------- 1 file changed, 40 insertions(+), 39 deletions(-) (limited to 'sca-java-2.x/trunk/modules/domain-hazelcast/src/main') diff --git a/sca-java-2.x/trunk/modules/domain-hazelcast/src/main/java/org/apache/tuscany/sca/registry/hazelcast/HazelcastDomainRegistry.java b/sca-java-2.x/trunk/modules/domain-hazelcast/src/main/java/org/apache/tuscany/sca/registry/hazelcast/HazelcastDomainRegistry.java index f74375eca3..73c6409272 100644 --- a/sca-java-2.x/trunk/modules/domain-hazelcast/src/main/java/org/apache/tuscany/sca/registry/hazelcast/HazelcastDomainRegistry.java +++ b/sca-java-2.x/trunk/modules/domain-hazelcast/src/main/java/org/apache/tuscany/sca/registry/hazelcast/HazelcastDomainRegistry.java @@ -38,7 +38,6 @@ import javax.wsdl.Definition; import javax.wsdl.WSDLException; import javax.wsdl.xml.WSDLReader; import javax.wsdl.xml.WSDLWriter; -import javax.xml.namespace.QName; import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamReader; @@ -96,8 +95,10 @@ public class HazelcastDomainRegistry extends BaseDomainRegistry implements Domai protected Map endpointMap; protected MultiMap endpointOwners; - protected Map> runningComposites; - protected Map>> runningCompositeOwners; + + // key contributionURI, value map key compositeURI value compositeXML + protected Map> runningComposites; + protected Map>> runningCompositeOwners; protected Map endpointWsdls; protected Map localEndpoints = new ConcurrentHashMap(); @@ -470,11 +471,11 @@ public class HazelcastDomainRegistry extends BaseDomainRegistry implements Domai } } if (runningCompositeOwners.containsKey(memberAddr)) { - Map> cs = runningCompositeOwners.remove(memberAddr); + Map> cs = runningCompositeOwners.remove(memberAddr); for (String curi : cs.keySet()) { - Map rcs = runningComposites.get(curi); - for (QName qn : cs.get(curi)) { - rcs.remove(qn); + Map rcs = runningComposites.get(curi); + for (String uri : cs.get(curi)) { + rcs.remove(uri); } } } @@ -514,47 +515,47 @@ public class HazelcastDomainRegistry extends BaseDomainRegistry implements Domai String localMemberAddr = hazelcastInstance.getCluster().getLocalMember().getInetSocketAddress().toString(); String compositeXML = writeComposite(composite); // TODO: doing this in a txn causes the values to get lost - looks like a bug in hazelcast -// Transaction txn = hazelcastInstance.getTransaction(); -// txn.begin(); -// try { - Map cs = runningComposites.get(curi); + Transaction txn = hazelcastInstance.getTransaction(); + txn.begin(); + try { + Map cs = runningComposites.get(curi); if (cs == null) { - cs = new HashMap(); + cs = new HashMap(); } - cs.put(composite.getName(), compositeXML); + cs.put(composite.getURI(), compositeXML); runningComposites.put(curi, cs); - Map> ocs = runningCompositeOwners.get(localMemberAddr); + Map> ocs = runningCompositeOwners.get(localMemberAddr); if (ocs == null) { - ocs = new HashMap>(); + ocs = new HashMap>(); } - List lcs = ocs.get(curi); + List lcs = ocs.get(curi); if (lcs == null) { - lcs = new ArrayList(); + lcs = new ArrayList(); ocs.put(curi, lcs); } - lcs.add(composite.getName()); + lcs.add(composite.getURI()); runningCompositeOwners.put(localMemberAddr, ocs); -// txn.commit(); -// } catch (Throwable e) { -// txn.rollback(); -// throw new ServiceRuntimeException(e); -// } + txn.commit(); + } catch (Throwable e) { + txn.rollback(); + throw new ServiceRuntimeException(e); + } } - public void removeRunningComposite(String curi, QName name) { + public void removeRunningComposite(String curi, String compositeURI) { String localMemberAddr = hazelcastInstance.getCluster().getLocalMember().getInetSocketAddress().toString(); Transaction txn = hazelcastInstance.getTransaction(); txn.begin(); try { - Map cs = runningComposites.get(curi); + Map cs = runningComposites.get(curi); if (cs != null) { - cs.remove(name); + cs.remove(compositeURI); } - Map> ocs = runningCompositeOwners.get(localMemberAddr); + Map> ocs = runningCompositeOwners.get(localMemberAddr); if (ocs != null) { - List xya = ocs.get(curi); + List xya = ocs.get(curi); if (xya != null) { - xya.remove(name); + xya.remove(compositeURI); } } txn.commit(); @@ -564,23 +565,23 @@ public class HazelcastDomainRegistry extends BaseDomainRegistry implements Domai } } - public Map> getRunningCompositeNames() { - Map> compositeNames = new HashMap>(); + public Map> getRunningCompositeURIs() { + Map> compositeURIs = new HashMap>(); for (String curi : runningComposites.keySet()) { - List names = new ArrayList(); - compositeNames.put(curi, names); - for (QName qn : runningComposites.get(curi).keySet()) { - names.add(qn); + List uris = new ArrayList(); + compositeURIs.put(curi, uris); + for (String uri : runningComposites.get(curi).keySet()) { + uris.add(uri); } } - return compositeNames; + return compositeURIs; } @Override - public Composite getRunningComposite(String contributionURI, QName name) { - Map cs = runningComposites.get(contributionURI); + public Composite getRunningComposite(String contributionURI, String compositeURI) { + Map cs = runningComposites.get(contributionURI); if (cs != null) { - String compositeXML = cs.get(name); + String compositeXML = cs.get(compositeURI); return readComposite(compositeXML); } return null; -- cgit v1.2.3