Package org.jboss.remoting.transport.multiplex

Examples of org.jboss.remoting.transport.multiplex.MultiplexServerInvoker


         // Verify callback MultiplexServerInvoker and MultiplexClientInvoker have same port.
         Field field = MultiplexClientInvoker.class.getDeclaredField("bindSocketAddress");
         field.setAccessible(true);
         int clientBindPort = ((InetSocketAddress)field.get(client.getInvoker())).getPort();
         log.info("client bind port: " + clientBindPort);
         MultiplexServerInvoker invoker = (MultiplexServerInvoker) callbackConnector.getServerInvoker();
         int serverInvokerPort = invoker.getServerSocket().getLocalPort();
         log.info("MultiplexServerInvoker's port: " + serverInvokerPort);
         assertTrue(serverInvokerPort == clientBindPort);
        
         // Verify callback Connector's InvokerLocator was correctly reset.
         int callbackConnectorPort = callbackConnector.getLocator().getPort();
View Full Code Here


         // Verify callback MultiplexServerInvoker and MultiplexClientInvoker have same port.
         Field field = MultiplexClientInvoker.class.getDeclaredField("bindSocketAddress");
         field.setAccessible(true);
         int clientBindPort = ((InetSocketAddress)field.get(client.getInvoker())).getPort();
         log.info("client bind port: " + clientBindPort);
         MultiplexServerInvoker invoker = (MultiplexServerInvoker) callbackConnector.getServerInvoker();
         int serverInvokerPort = invoker.getServerSocket().getLocalPort();
         log.info("MultiplexServerInvoker's port: " + serverInvokerPort);
         assertTrue(serverInvokerPort == clientBindPort);
        
         // Verify callback Connector's InvokerLocator was correctly reset.
         int callbackConnectorPort = callbackConnector.getLocator().getPort();
View Full Code Here

         Connector callbackConnector = new Connector(callbackURI);
         log.info("callback locator: " + callbackURI);
         callbackConnector.start();
        
         // Verify that MultiplexServerInvoker has a positive bind port.
         MultiplexServerInvoker invoker = (MultiplexServerInvoker) callbackConnector.getServerInvoker();
         Field field = MultiplexServerInvoker.class.getDeclaredField("socketGroupInfo");
         field.setAccessible(true);
         SocketGroupInfo socketGroupInfo = (SocketGroupInfo) field.get(invoker);
         assertTrue(socketGroupInfo.getBindPort() > 0);
        
         // Verify callback MultiplexServerInvoker has not started (rule 3).
         assertFalse(callbackConnector.getServerInvoker().isStarted());
        
         // Create Client.
         String params = "/?clientMultiplexId=id";
         String locatorURI =  serverLocatorURI + params;
         InvokerLocator clientLocator = new InvokerLocator(locatorURI);
         log.info("client locator: " + clientLocator);
         Client client = new Client(clientLocator);
         client.connect();

         // Verify callback MultiplexServerInvoker has started.
         assertTrue(callbackConnector.getServerInvoker().isStarted());
        
         // Verify callback MultiplexServerInvoker and MultiplexClientInvoker have same port.
         field = MultiplexClientInvoker.class.getDeclaredField("bindSocketAddress");
         field.setAccessible(true);
         int clientBindPort = ((InetSocketAddress)field.get(client.getInvoker())).getPort();
         log.info("client bind port: " + clientBindPort);
         int serverInvokerPort = invoker.getServerSocket().getLocalPort();
         log.info("MultiplexServerInvoker's port: " + serverInvokerPort);
         assertTrue(serverInvokerPort == clientBindPort);
        
         // Verify callback Connector's InvokerLocator was correctly reset.
         int callbackConnectorPort = callbackConnector.getLocator().getPort();
View Full Code Here

         Connector callbackConnector = new Connector(callbackURI);
         log.info("callback locator: " + callbackURI);
         callbackConnector.start();
        
         // Verify that MultiplexServerInvoker has a positive bind port.
         MultiplexServerInvoker invoker = (MultiplexServerInvoker) callbackConnector.getServerInvoker();
         Field field = MultiplexServerInvoker.class.getDeclaredField("socketGroupInfo");
         field.setAccessible(true);
         SocketGroupInfo socketGroupInfo = (SocketGroupInfo) field.get(invoker);
         assertTrue(socketGroupInfo.getBindPort() > 0);
        
         // Verify callback MultiplexServerInvoker has not started.
         assertFalse(callbackConnector.getServerInvoker().isStarted());
        
         // Create Client.
         String params = "/?clientMultiplexId=id";
         String locatorURI =  serverLocatorURI + params;
         InvokerLocator clientLocator = new InvokerLocator(locatorURI);
         log.info("client locator: " + clientLocator);
         Client client = new Client(clientLocator);
         client.connect();

         // Verify callback MultiplexServerInvoker has started.
         assertTrue(callbackConnector.getServerInvoker().isStarted());
        
         // Verify callback MultiplexServerInvoker and MultiplexClientInvoker have same port.
         field = MultiplexClientInvoker.class.getDeclaredField("bindSocketAddress");
         field.setAccessible(true);
         int clientBindPort = ((InetSocketAddress)field.get(client.getInvoker())).getPort();
         log.info("client bind port: " + clientBindPort);
         int serverInvokerPort = invoker.getServerSocket().getLocalPort();
         log.info("MultiplexServerInvoker's port: " + serverInvokerPort);
         assertTrue(serverInvokerPort == clientBindPort);
        
         // Verify callback Connector's InvokerLocator was correctly reset.
         int callbackConnectorPort = callbackConnector.getLocator().getPort();
View Full Code Here

         // Tell test server to connect.
         os.write(3);
        
         /////////////////////////////////////////////////////////////////////////////////////
         // Get MultiplexingManager.
         MultiplexServerInvoker masterServerInvoker = (MultiplexServerInvoker) connector1.getServerInvoker();       
         while (masterServerInvoker.getServerInvokers().isEmpty())
         {
            try
            {
               Thread.sleep(1000);
            }
            catch (Exception e) {}
         }
        
         Collection virtualServerInvokers = masterServerInvoker.getServerInvokers();
         MultiplexServerInvoker virtualServerInvoker = (MultiplexServerInvoker) virtualServerInvokers.iterator().next();
         VirtualServerSocket vss = (VirtualServerSocket) virtualServerInvoker.getServerSocket();
         MultiplexingManager manager = vss.getMultiplexingManager();

         // Test MultiplexingManager parameters.
         Field field = MultiplexingManager.class.getDeclaredField("staticThreadsMonitorPeriod");
         field.setAccessible(true);
         assertEquals(field.getInt(manager), 2 + Multiplex.STATIC_THREADS_MONITOR_PERIOD_DEFAULT);
        
         field = MultiplexingManager.class.getDeclaredField("shutdownRequestTimeout");
         field.setAccessible(true);
         assertEquals(field.getInt(manager), 3 + Multiplex.SHUTDOWN_REQUEST_TIMEOUT_DEFAULT);
        
         field = MultiplexingManager.class.getDeclaredField("shutdownRefusalsMaximum");
         field.setAccessible(true);
         assertEquals(field.getInt(manager), 4 + Multiplex.SHUTDOWN_REFUSALS_MAXIMUM_DEFAULT);
        
         field = MultiplexingManager.class.getDeclaredField("shutdownMonitorPeriod");
         field.setAccessible(true);
         assertEquals(field.getInt(manager), 5 + Multiplex.SHUTDOWN_MONITOR_PERIOD_DEFAULT);
        
         /////////////////////////////////////////////////////////////////////////////////////
         // Get InputMultiplexor.
         field =  MultiplexingManager.class.getDeclaredField("inputMultiplexor");
         field.setAccessible(true);
         InputMultiplexor inputMultiplexor = (InputMultiplexor) field.get(manager);
        
         // Test InputMultiplexor parameters.
         field = InputMultiplexor.class.getDeclaredField("bufferSize");
         field.setAccessible(true);
         assertEquals(field.getInt(inputMultiplexor), 2 + Multiplex.INPUT_BUFFER_SIZE_DEFAULT);
        
         field = InputMultiplexor.class.getDeclaredField("maxErrors");
         field.setAccessible(true);
         assertEquals(field.getInt(inputMultiplexor), 3 + Multiplex.INPUT_MAX_ERRORS_DEFAULT);
        
         /////////////////////////////////////////////////////////////////////////////////////
         // Get OutputMultiplexor.
         field =  MultiplexingManager.class.getDeclaredField("outputMultiplexor");
         field.setAccessible(true);
         OutputMultiplexor outputMultiplexor = (OutputMultiplexor) field.get(manager);
        
         // Test OutputMultiplexor parameters.
         field = OutputMultiplexor.class.getDeclaredField("messagePoolSize");
         field.setAccessible(true);
         assertEquals(field.getInt(outputMultiplexor), 2 + Multiplex.OUTPUT_MESSAGE_POOL_SIZE_DEFAULT);
        
         field = OutputMultiplexor.class.getDeclaredField("messagePool");
         field.setAccessible(true);
         List messagePool = (List) field.get(outputMultiplexor);
         assertTrue(messagePool.size() <=  2 + Multiplex.OUTPUT_MESSAGE_POOL_SIZE_DEFAULT);
         
         field = OutputMultiplexor.class.getDeclaredField("messageSize");
         field.setAccessible(true);
         assertEquals(field.getInt(outputMultiplexor), 3 + Multiplex.OUTPUT_MESSAGE_SIZE_DEFAULT);
        
         Object message = messagePool.get(0);
         field = message.getClass().getDeclaredField("baos");
         field.setAccessible(true);
         ByteArrayOutputStream baos = (ByteArrayOutputStream) field.get(message);
         field = ByteArrayOutputStream.class.getDeclaredField("buf");
         field.setAccessible(true);
         byte[] buf = (byte[]) field.get(baos);
         assertEquals(buf.length, 3 + Multiplex.OUTPUT_MESSAGE_SIZE_DEFAULT);
       
         field = OutputMultiplexor.class.getDeclaredField("maxChunkSize");
         field.setAccessible(true);
         assertEquals(field.getInt(outputMultiplexor), 4 + Multiplex.OUTPUT_MAX_CHUNK_SIZE_DEFAULT);
        
         field = OutputMultiplexor.class.getDeclaredField("buffer");
         field.setAccessible(true);
         ByteBuffer bb = (ByteBuffer) field.get(outputMultiplexor);
         field = OutputMultiplexor.class.getDeclaredField("HEADER_SIZE");
         field.setAccessible(true);
         int headerSize = ((Integer) field.get(outputMultiplexor)).intValue();
         assertEquals(bb.capacity(), 4 + Multiplex.OUTPUT_MAX_CHUNK_SIZE_DEFAULT + headerSize);
        
         field = OutputMultiplexor.class.getDeclaredField("maxTimeSlice");
         field.setAccessible(true);
         assertEquals(field.getInt(outputMultiplexor), 5 + Multiplex.OUTPUT_MAX_TIME_SLICE_DEFAULT);
        
         field = OutputMultiplexor.class.getDeclaredField("maxDataSlice");
         field.setAccessible(true);
         assertEquals(field.getInt(outputMultiplexor), 6 + Multiplex.OUTPUT_MAX_DATA_SLICE_DEFAULT);
         /////////////////////////////////////////////////////////////////////////////////////
         // Test MultiplexServerInvoker parameter.
         field = MultiplexServerInvoker.class.getDeclaredField("maxAcceptErrors");
         field.setAccessible(true);
         assertEquals(field.getInt(masterServerInvoker), 2 + Multiplex.MAX_ACCEPT_ERRORS_DEFAULT);
         assertEquals(field.getInt(virtualServerInvoker), 2 + Multiplex.MAX_ACCEPT_ERRORS_DEFAULT);
         /////////////////////////////////////////////////////////////////////////////////////
         // Now, create another Connector and test parameters in new objects.
        
         // Increase parameter values.
         Iterator it = conf.keySet().iterator();
         while (it.hasNext())
         {
            Object key = it.next();
            conf.put(key, new Integer(((Integer)conf.get(key)).intValue() + 2));
         }
        
        
         // Create Connector.
         Connector connector2 = new Connector(ConfigurationTestServer.connectorURI2, conf);
         connector2.create();
         connector2.start();
         log.info("started Connector on: " + connector2.getInvokerLocator());

         // Tell test server to connect.
         os.write(7);
        
         /////////////////////////////////////////////////////////////////////////////////////
         // Get MultiplexingManager.
         masterServerInvoker = (MultiplexServerInvoker) connector2.getServerInvoker();       
         while (masterServerInvoker.getServerInvokers().isEmpty())
         {
            try
            {
               Thread.sleep(1000);
            }
            catch (Exception e) {}
         }
        
         virtualServerInvokers = masterServerInvoker.getServerInvokers();
         virtualServerInvoker = (MultiplexServerInvoker) virtualServerInvokers.iterator().next();
         vss = (VirtualServerSocket) virtualServerInvoker.getServerSocket();
         manager = vss.getMultiplexingManager();

         // Test MultiplexingManager parameters.
         field = MultiplexingManager.class.getDeclaredField("staticThreadsMonitorPeriod");
         field.setAccessible(true);
View Full Code Here

TOP

Related Classes of org.jboss.remoting.transport.multiplex.MultiplexServerInvoker

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.