diff options
author | wjaniszewski <wjaniszewski@13f79535-47bb-0310-9956-ffa450edef68> | 2008-08-12 15:17:26 +0000 |
---|---|---|
committer | wjaniszewski <wjaniszewski@13f79535-47bb-0310-9956-ffa450edef68> | 2008-08-12 15:17:26 +0000 |
commit | 33cf44b2ca09724ab08769b887750f8b3807fc9e (patch) | |
tree | 279941f2ce063119207bf7ee0563960c374a2914 /java/sca/modules/host-corba-jse | |
parent | ed705b30f8f693b700696ee69cf1def0b37ce5c8 (diff) |
Added Transient Name Server JSE Corba host. Adjusted existing bindings and integration tests and removed 'provideNameServer' flag from binding.corba configuration
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@685180 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/host-corba-jse')
3 files changed, 3 insertions, 90 deletions
diff --git a/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/CorbaRuntimeModuleActivator.java b/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/CorbaRuntimeModuleActivator.java index 4194e733a4..252a1512e4 100644 --- a/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/CorbaRuntimeModuleActivator.java +++ b/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/CorbaRuntimeModuleActivator.java @@ -18,8 +18,6 @@ */ package org.apache.tuscany.sca.host.corba.jse; -import java.util.logging.Logger; - import org.apache.tuscany.sca.core.ExtensionPointRegistry; import org.apache.tuscany.sca.core.ModuleActivator; import org.apache.tuscany.sca.host.corba.CorbaHostExtensionPoint; @@ -28,16 +26,15 @@ import org.apache.tuscany.sca.host.corba.CorbaHostExtensionPoint; * @version $Rev$ $Date$ */ public class CorbaRuntimeModuleActivator implements ModuleActivator { - private static final Logger logger = Logger.getLogger(CorbaRuntimeModuleActivator.class.getName()); + // private static final Logger logger = + // Logger.getLogger(CorbaRuntimeModuleActivator.class.getName()); private DefaultCorbaHost server; public void start(ExtensionPointRegistry extensionPointRegistry) { // Register our Corba host - CorbaHostExtensionPoint corbaHosts = - extensionPointRegistry.getExtensionPoint(CorbaHostExtensionPoint.class); - + CorbaHostExtensionPoint corbaHosts = extensionPointRegistry.getExtensionPoint(CorbaHostExtensionPoint.class); server = new DefaultCorbaHost(); corbaHosts.addCorbaHost(server); } diff --git a/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/DefaultCorbaHost.java b/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/DefaultCorbaHost.java index 14ef2eb908..e0cee52c3d 100644 --- a/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/DefaultCorbaHost.java +++ b/java/sca/modules/host-corba-jse/src/main/java/org/apache/tuscany/sca/host/corba/jse/DefaultCorbaHost.java @@ -29,8 +29,6 @@ import org.apache.tuscany.sca.host.corba.CorbaHost; import org.apache.tuscany.sca.host.corba.CorbaHostException; import org.apache.tuscany.sca.host.corba.CorbaHostUtils; import org.apache.tuscany.sca.host.corba.CorbanameURL; -import org.apache.tuscany.sca.host.corba.naming.TransientNameServer; -import org.apache.tuscany.sca.host.corba.naming.TransientNameService; import org.omg.CORBA.ORB; import org.omg.CORBA.Object; import org.omg.CosNaming.NameComponent; @@ -48,8 +46,6 @@ public class DefaultCorbaHost implements CorbaHost { private static final Logger logger = Logger.getLogger(DefaultCorbaHost.class.getName()); private Map<String, ORB> orbs = new ConcurrentHashMap<String, ORB>(); - private Map<Integer, TransientNameServer> localServers = new ConcurrentHashMap<Integer, TransientNameServer>(); - private Map<Integer, Integer> clientsCount = new ConcurrentHashMap<Integer, Integer>(); private void validatePort(int port) throws IllegalArgumentException { if (port < 1) { @@ -181,49 +177,4 @@ public class DefaultCorbaHost implements CorbaHost { } } - /** - * Starts transient name server under given port. If TNS was previously - * spawned it increments clients counter. - */ - synchronized public void createLocalNameServer(int port) throws CorbaHostException { - int useCount = clientsCount.containsKey(port) ? clientsCount.get(port) : 0; - // no server previously spawned - if (useCount == 0) { - TransientNameServer server = - new TransientNameServer("localhost", port, TransientNameService.DEFAULT_SERVICE_NAME); - Thread thread = server.start(); - if (thread == null) { - throw new CorbaHostException("TransientNameServer couldn't be started"); - } else { - localServers.put(port, server); - } - } - clientsCount.put(port, ++useCount); - } - - /** - * Stops transient name server if there is only one client left using such - * TNS. Decrements clients counter if TNS is used by 2 or more clients. - */ - synchronized public void releaseLocalNameServer(int port) throws CorbaHostException { - int useCount = clientsCount.containsKey(port) ? clientsCount.get(port) : 0; - if (useCount == 1) { - // last client executed stop, cleaning up - TransientNameServer server = localServers.get(port); - if (server != null) { - server.stop(); - clientsCount.remove(port); - localServers.remove(port); - } else { - // FIXME: should we throw exception when expecting not null - // server object? - } - } else if (useCount > 1) { - clientsCount.put(port, --useCount); - } else { - // ignoring request to stop non existing name server - } - - } - } diff --git a/java/sca/modules/host-corba-jse/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java b/java/sca/modules/host-corba-jse/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java index 6b98f1c949..8084e39956 100644 --- a/java/sca/modules/host-corba-jse/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java +++ b/java/sca/modules/host-corba-jse/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java @@ -247,39 +247,4 @@ public class DefaultCorbaHostTestCase { } } - /** - * Test for creating and releasing local name server - */ - @Test - public void test_localNameServer() { - int testPort = 5070; - try { - host.createLocalNameServer(testPort); - host.createLocalNameServer(testPort); - host.createLocalNameServer(testPort); - Thread.sleep(1000); - // make test connection to name server - Socket socket = new Socket("localhost", testPort); - socket.close(); - // and stop server - host.releaseLocalNameServer(testPort); - host.releaseLocalNameServer(testPort); - // after releasing 2 clients 3rd should still hold the server - socket = new Socket("localhost", testPort); - socket.close(); - host.releaseLocalNameServer(testPort); - Thread.sleep(1000); - } catch (Exception e) { - e.printStackTrace(); - fail(); - } - try { - // previously made 3rd stop so there should be no name server under - // this port - new Socket("localhost", testPort); - fail(); - } catch (Exception e) { - assertTrue(e instanceof SocketException); - } - } } |