Examples of VirtualServerSocket


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

      catch (IOException e)
      {
         log.error(e);
      }

      VirtualServerSocket serverSocket = null;
      int testSocketPort = testSocket.getLocalPort();

      try
      {
         serverSocket = new VirtualServerSocket(testSocketPort);
         assertTrue(doOneServerSocketTest(serverSocket, testSocketPort));
         serverSocket.close();
         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isClosed() == true);
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
         fail();
      }

      try
      {
         // Give remote ServerSocket time to unregister.
         InetSocketAddress address = new InetSocketAddress(serverSocket.getInetAddress(), serverSocket.getRemotePort());
         log.warn("address: " + address);
         while (MultiplexingManager.checkForShareableManager(address))
            Thread.sleep(2000);

         serverSocket = new VirtualServerSocket();
         assertTrue(serverSocket.isBound() == false);
         assertTrue(serverSocket.isClosed() == false);

         // Bind serverSocket to the testSocket's local port.  This will get the MultiplexingManager
         // associated with testSocket, which is already connected
         doBind(serverSocket, null, new InetSocketAddress(clientServerSocketHost, testSocketPort));

         assertTrue(serverSocket.isBound() == true);
         assertTrue(doOneServerSocketTest(serverSocket, testSocketPort));
         serverSocket.close();
         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isClosed() == true);
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
         fail();
      }

      try
      {
         // Create a new VirtualServerSocket, and bind it to testSocket's local port.
         // This will get the MultiplexingManager associated with testSocket, which is already connected
         serverSocket = doBind(null,
                               basicBehaviorServerSocketAddress,
                               new InetSocketAddress(clientServerSocketHost, testSocketPort));

         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isConnected() == true);
         assertTrue(serverSocket.isClosed() == false);
         assertTrue(doOneServerSocketTest(serverSocket, testSocketPort));
         serverSocket.close();
         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isConnected() == true);
         assertTrue(serverSocket.isClosed() == true);
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
View Full Code Here

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

      catch (IOException e)
      {
         log.error(e);
      }

      VirtualServerSocket serverSocket = null;

      try
      {
         serverSocket = new VirtualServerSocket();
         assertTrue(serverSocket.isBound() == false);
         assertTrue(serverSocket.isClosed() == false);

         // Bind serverSocket to an unused local address.  This will lead to the creation of a new
         // real socket, bound to that address, and a MultiplexingManager to wrap it.
         log.info("binding to: " + nextBindPort);
         doBind(serverSocket, null, new InetSocketAddress(clientServerSocketHost, nextBindPort));

         assertTrue(serverSocket.isBound() == true);

         // Connect serverSocket to a remote address.  This will cause the real socket to connect to a
         // MasterServerSocket at that address, leading to the creation of a real socket on the
         // remote host and a MultiplexingManager to wrap it.
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address1 = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is = testSocket.getInputStream();
         is.read();
         serverSocket.connect(address1);

         assertTrue(serverSocket.isConnected());
         assertTrue(doOneServerSocketTest(serverSocket, nextBindPort));
         serverSocket.close();
         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isClosed() == true);
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
         fail();
      }

      try
      {
         // Create a new VirtualServerSocket, bind it to an unused local address, and connect it
         // to the server.  This will lead to the creation of a new real socket, wrapped by a MultiplexingManager,
         // bound to that address and connected to the server.

         nextBindPort++;
         InetSocketAddress bindAddress = new InetSocketAddress(clientServerSocketHost, nextBindPort);
         log.info("binding to: " + nextBindPort);
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address2 = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is.read();
         serverSocket = doBind(null, address2, bindAddress);

         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isConnected() == true);
         assertTrue(serverSocket.isClosed() == false);
         assertTrue(doOneServerSocketTest(serverSocket, nextBindPort));
         serverSocket.close();
         assertTrue(serverSocket.isBound() == true);
         assertTrue(serverSocket.isConnected() == true);
         assertTrue(serverSocket.isClosed() == true);
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
View Full Code Here

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

           = (VirtualServerSocketFactory) VirtualServerSocketFactory.getDefault();
         serverSocketFactory.setOnClient();
         nextBindPort++;
         log.info("binding to: " + nextBindPort);
         InetAddress bindAddress = InetAddress.getByName(clientServerSocketHost);
         VirtualServerSocket serverSocket
           = (VirtualServerSocket) serverSocketFactory.createServerSocket(nextBindPort, 50, bindAddress);
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is = testSocket.getInputStream();
         is.read();
         serverSocket.connect(address);
         assertTrue(doOneServerSocketTest(serverSocket, nextBindPort));
         serverSocket.close();
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
         fail();
      }

      try
      {
         VirtualServerSocketFactory serverSocketFactory
           = (VirtualServerSocketFactory) VirtualServerSocketFactory.getDefault();
         serverSocketFactory.setOnServer();
         nextBindPort++;
         log.info("binding to: " + nextBindPort);
         InetAddress bindAddress = InetAddress.getByName(clientServerSocketHost);
         MasterServerSocket serverSocket
           = (MasterServerSocket) serverSocketFactory.createServerSocket(nextBindPort, 50, bindAddress);
         assertTrue(doOneServerSocketTest(serverSocket, nextBindPort));
         serverSocket.close();
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
View Full Code Here

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

      catch (IOException e)
      {
         log.error(e);
      }

      VirtualServerSocket serverSocket1 = null;

      try
      {
         Socket virtualSocket1 = null;
         Socket virtualSocket2 = null;
         Socket virtualSocket3 = null;
         Socket virtualSocket4 = null;

         serverSocket1 = new VirtualServerSocket();
         log.info("binding to: " + ++nextBindPort);
         doBind(serverSocket1, null, new InetSocketAddress(clientServerSocketHost, nextBindPort));
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address1 = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is = testSocket.getInputStream();
         is.read();
         serverSocket1.connect(address1);
         serverSocket1.setSoTimeout(2000);

         try
         {
            virtualSocket1 = serverSocket1.accept();
            fail();
         }
         catch (SocketTimeoutException e)
         {
            if (e.getMessage().equals("Accept timed out"))
               log.info("received expected timeout exception");
            else
               fail();
         }

         assertTrue(virtualSocket1 == null);
         os = testSocket.getOutputStream();
         os.write(3);
         virtualSocket2 = serverSocket1.accept();
         assertTrue(virtualSocket2.getSoTimeout() == 0);
         virtualSocket2.close();
         serverSocket1.close();

         log.info("binding to: " + ++nextBindPort);
         MasterServerSocket serverSocket2 = new MasterServerSocket(nextBindPort);
         serverSocket2.setSoTimeout(2000);
View Full Code Here

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

      catch (IOException e)
      {
         log.error(e);
      }

      VirtualServerSocket serverSocket = null;

      try
      {
         serverSocket = new VirtualServerSocket();
         log.info("binding to: " + ++nextBindPort);
         doBind(serverSocket, null, new InetSocketAddress(clientServerSocketHost, nextBindPort));
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address1 = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is = testSocket.getInputStream();
         is.read();
         serverSocket.connect(address1);
         log.info("server socket is connected");
         os = testSocket.getOutputStream();
         os.write(5);
         is.read();
         int port = serverSocket.getRemotePort();
         log.info("new virtual socket connecting to: " + port);
         Socket virtualSocket1 = new VirtualSocket(clientServerSocketHost, port);
         log.info("first virtual socket connected");
         InputStream is1 = virtualSocket1.getInputStream();
         OutputStream os1 = virtualSocket1.getOutputStream();
         log.info("server socket accepting on port: " + serverSocket.getLocalPort());
         Socket virtualSocket2 = serverSocket.accept();
         log.info("second virtual socket created");
         InputStream is2 = virtualSocket2.getInputStream();
         OutputStream os2 = virtualSocket2.getOutputStream();
         os1.write(9);
         assertTrue(is1.read() == 9);
         os2.write(11);
         assertTrue(is2.read() == 11);
         virtualSocket1.close();
         virtualSocket2.close();
         serverSocket.close();
      }
      catch (Exception e)
      {
         log.error(e);
         e.printStackTrace();
View Full Code Here

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

         log.error(e);
      }

      try
      {
         VirtualServerSocket vss = new VirtualServerSocket();
         log.info("binding to: " + ++nextBindPort);
         BasicServerSocketBehaviorClient.doBind(vss, null, new InetSocketAddress(clientServerSocketHost, nextBindPort));
         log.info("connecting server socket to port: " + ++nextConnectPort);
         InetSocketAddress address1 = new InetSocketAddress(basicBehaviorServerHost, nextConnectPort);
         is = testSocket.getInputStream();
         is.read();
         vss.connect(address1);

         AcceptInterruptThread t1 = new AcceptInterruptThread(vss);
         // Now that accept() is synchronized, only one thread can be in accept().
//         AcceptInterruptThread t2 = new AcceptInterruptThread(vss);
         t1.start();
//         t2.start();
         Thread.sleep(3000);
         vss.close();
         os = testSocket.getOutputStream();
         os.write(7);
         t1.join();
//         t2.join();
         assertTrue(t1.getSuccess());
View Full Code Here

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

   {
      log.info("entering doBind()");
      log.info("serverSocket = " + serverSocket);
      log.info("remote address: " + remoteAddress);
      log.info("local address: " + localAddress);
      VirtualServerSocket newServerSocket = null;

      for (int i = 0; i < 5; i++)
      {
         try
         {
            if (serverSocket == null)
            {
               if (remoteAddress == null)
                  newServerSocket = new VirtualServerSocket(localAddress.getPort());
               else
                  newServerSocket = new VirtualServerSocket(remoteAddress, localAddress, 0, null);
            }
            else
            {
               // ServerSockets created in testServerSocketFactory() may come in already bound.
               if (!serverSocket.isBound())
                  serverSocket.bind(localAddress);

               if (!serverSocket.isConnected() && remoteAddress != null)
                  serverSocket.connect(remoteAddress);
            }

            break;
         }
         catch (BindException e)
         {
            log.info("bind attempt failed: try again: " + e);

            if (newServerSocket != null)
            {
               try
               {
                  newServerSocket.close();
                  newServerSocket = null;
               }
               catch (IOException ignored)
               {
                  log.error(e);
               }
            }

            try
            {
               Thread.sleep(2000);
            }
            catch (InterruptedException ignored) {}
         }
         catch (SocketException e)
         {
            String message = e.getMessage();

            if (message.equals("Already bound") || message.equals("Cannot assign requested address"))
            {
               log.info("bind attempt failed: try again");
               log.info(e);

               if (newServerSocket != null)
               {
                  try
                  {
                     log.info("calling newServerSocket.close()");
                     newServerSocket.close();
                     newServerSocket = null;
                  }
                  catch (IOException ignored)
                  {
                     log.error(e);
View Full Code Here

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

                     os.write(3);
                     Socket virtualSocket1 = mss.accept();
                     Socket virtualSocket2 = mss.accept();
                     int localPort = virtualSocket2.getLocalPort();
                     log.info("VirtualServerSocket binding to port: " + localPort);
                     vss = new VirtualServerSocket(localPort);
                     os.write(5);
                     Socket virtualSocket3 = vss.accept();
                     DataOutputStream vos = new DataOutputStream(virtualSocket3.getOutputStream());
                     vos.writeInt(localPort);
                     virtualSocket1.close();
                     virtualSocket2.close();
                     virtualSocket3.close();
                     mss.close();
                     vss.close();
                     break;

                  case RUN_SERVER_TIMEOUT_TEST:
                     Socket virtualSocket4 = null;
                     Socket virtualSocket5 = null;
                     Socket virtualSocket6 = null;
                     Socket virtualSocket7 = null;

                     mss = new MasterServerSocket(basicBehaviorServerPort + 100);
                     mss.setSoTimeout(10000);
                     os.write(3);
                     Thread.sleep(1000);

                     try
                     {
                        virtualSocket4 = mss.accept();
                        log.info("accepted virtualSocket4");
                     }
                     catch(SocketTimeoutException e)
                     {
                        log.info(e);
                     }

                     try
                     {
                        virtualSocket5 = mss.accept();
                        log.info("accepted virtualSocket5");
                     }
                     catch(SocketTimeoutException e)
                     {
                        log.info("timed out waiting to accept virtualSocket5");
                     }

                     is.read();
                     Thread.sleep(1000);
                     vss = new VirtualServerSocket(basicBehaviorServerPort + 101);
                     SocketAddress address1 = new InetSocketAddress(clientServerSocketHost, clientServerSocketPort + 101);
                     vss.connect(address1);
                     os.write(5);
                     Thread.sleep(1000);
                     vss.setSoTimeout(10000);

                     try
                     {
                        virtualSocket6 = vss.accept();
                        log.info("accepted virtualSocket6");
                     }
                     catch(SocketTimeoutException e)
                     {
                        log.info(e);
                     }

                     try
                     {
                        virtualSocket7 = vss.accept();
                        log.info("accepted virtualSocket7");
                     }
                     catch(SocketTimeoutException e)
                     {
                        log.info(e);
                     }

                     if(virtualSocket4 != null)
                     {
                        virtualSocket4.close();
                     }
                     if(virtualSocket5 != null)
                     {
                        virtualSocket5.close();
                     }
                     if(virtualSocket6 != null)
                     {
                        virtualSocket6.close();
                     }
                     if(virtualSocket7 != null)
                     {
                        virtualSocket7.close();
                     }
                     mss.close();
                     vss.close();
                     break;

                  case RUN_VSS_TO_VSS:
                     mss = new MasterServerSocket(++nextBindPort);
                     log.info("MasterServerSocket accepting connections on: " + nextBindPort);
                     os.write(3);
//                     int port = mss.acceptServerSocketConnection().getSocket().getLocalPort();
                     int port = mss.acceptServerSocketConnection();
                     vss = new VirtualServerSocket(port);
                     InetSocketAddress address = new InetSocketAddress(clientServerSocketHost, ++nextRemotePort);
                     is.read();
                     log.info("VirtualServerSocket connecting to port: " + nextRemotePort);
                     vss.connect(address);
                     log.info("VirtualServerSocket accepting connections on: " + nextBindPort);
                     os.write(7);
                     Socket virtualSocket8 = vss.accept();
                     log.info("first virtual socket created");
                     InputStream is8 = virtualSocket8.getInputStream();
                     OutputStream os8 = virtualSocket8.getOutputStream();
                     log.info("second virtual socket connecting to port: " + nextRemotePort);
                     Socket virtualSocket9 = new VirtualSocket(clientServerSocketHost, nextRemotePort);
                     log.info("second virtual socket created");
                     InputStream is9 = virtualSocket9.getInputStream();
                     OutputStream os9 = virtualSocket9.getOutputStream();
                     os8.write(is8.read());
                     os9.write(is9.read());
                     virtualSocket8.close();
                     virtualSocket9.close();
                     vss.close();
                     mss.close();
                     break;
                    
                  case RUN_LONG_MESSAGE_TEST:
                     vss = new VirtualServerSocket(((VirtualSocket)testSocket).getLocalPort());
                     log.info("VirtualServerSocket accepting connections on: " + nextBindPort);
                     os.write(3);
                     final Socket virtualSocket10 = vss.accept();
                     final Socket virtualSocket11 = vss.accept();
                     final Socket virtualSocket12 = vss.accept();
View Full Code Here

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

            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);
         log.info("inputMultiplexor: " + inputMultiplexor);
        
         // 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);
         log.info("outputMultiplexor: " + outputMultiplexor);
        
         // 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.  First, wait
         // until the static threads have stopped.
         connector1.stop();
         os.write(17);
        
         field = MultiplexingManager.class.getDeclaredField("allManagers");
         field.setAccessible(true);
         Collection allManagers = (Collection) field.get(manager);
        
         while (!allManagers.isEmpty())
         {
            try
            {
               Thread.sleep(1000);
            }
            catch (InterruptedException ignored) {}
         }
        
         Thread.sleep(2 * 2 * Multiplex.SHUTDOWN_MONITOR_PERIOD_DEFAULT + 2000);
         field = MultiplexingManager.class.getDeclaredField("staticThreadsRunning");
         field.setAccessible(true);
        
         // Wait until static threads are stopped.
         for (int i = 0; i < 5; i++)
         {
            if (!field.getBoolean(manager))
               break;
            Thread.sleep(2000);
         }
        
         assertFalse(field.getBoolean(manager));
        
         // 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));
         }
        
         log.info("configuration: " + conf);
        
         // Create Connector.
         Connector connector2 = new Connector(ConfigurationTestServer.connectorURI4, conf);
         connector2.create();
         connector2.start();
         log.info("started Connector on: " + connector2.getInvokerLocator());
        
         // Tell test server to connect.
         os.write(19);
        
         /////////////////////////////////////////////////////////////////////////////////////
         // 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);
         assertEquals(field.getInt(manager), 4 + Multiplex.STATIC_THREADS_MONITOR_PERIOD_DEFAULT);
View Full Code Here

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

         // Wait until remote VirtualServerSocket is running, then create local
         // VirtualServerSocket, bind it to the local port to which the remote
         // VirtualServerSocket is connected, and connect it to the remote
         // VirtualServerSocket.
         is_sync.read();
         VirtualServerSocket vss = new VirtualServerSocket(port);
         InetSocketAddress address = new InetSocketAddress(connectHost, connectPort);
         vss.setSoTimeout(5000);
         vss.connect(address);
        
         // Indicate that the local VirtualServerSocket is running.
         os_sync.write(7);
        
         // Create a virual socket by way of VirtualServerSocket.accept();
         Socket virtualSocket1 = vss.accept();
         InputStream is1 = virtualSocket1.getInputStream();
         OutputStream os1 = virtualSocket1.getOutputStream();
        
         // Create a virtual socket connected to the remote VirtualServerSocket.
         Socket virtualSocket2 = new VirtualSocket(connectHost, connectPort);
         InputStream is2 = virtualSocket2.getInputStream();
         OutputStream os2 = virtualSocket2.getOutputStream();
        
         // Do some i/o and close sockets.
         os1.write(is1.read());
         os2.write(is2.read());
         virtualSocket1.close();
         virtualSocket2.close();
         syncSocket.close();
         vss.close();
      }
      catch (Exception e)
      {
         e.printStackTrace();
      }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.