[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting/transport/bisocket ...

Ron Sigal ron_sigal at yahoo.com
Fri Feb 23 02:04:00 EST 2007


  User: rsigal  
  Date: 07/02/23 02:04:00

  Modified:    src/main/org/jboss/remoting/transport/bisocket  
                        Bisocket.java BisocketServerInvoker.java
  Log:
  JBREM-650: Added pingWindowFactor configuration parameter.
  
  Revision  Changes    Path
  1.3       +13 -1     JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/Bisocket.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: Bisocket.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/Bisocket.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- Bisocket.java	27 Dec 2006 05:58:10 -0000	1.2
  +++ Bisocket.java	23 Feb 2007 07:04:00 -0000	1.3
  @@ -23,7 +23,7 @@
   
   /** 
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.2 $
  + * @version $Revision: 1.3 $
    * <p>
    * Copyright Nov 22, 2006
    * </p>
  @@ -38,6 +38,18 @@
      public static final byte CREATE_CONTROL_SOCKET  = 2;
      public static final byte CREATE_ORDINARY_SOCKET = 3;
      
  +   /**
  +    * Configuration key and default value for frequency with which pings are sent
  +    * on a control connection.
  +    */
      public static final String PING_FREQUENCY = "pingFrequency";
      public static final int PING_FREQUENCY_DEFAULT = 5000;
  +   
  +   /**
  +    * Configuration key and default value for window within which a ping on a 
  +    * control connection must be receeived for the connection to be considered
  +    * alive.
  +    */
  +   public static final String PING_WINDOW_FACTOR = "pingWindowFactor";
  +   public static final int PING_WINDOW_FACTOR_DEFAULT = 2;
   }
  
  
  
  1.7       +68 -19    JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/BisocketServerInvoker.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: BisocketServerInvoker.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/transport/bisocket/BisocketServerInvoker.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -b -r1.6 -r1.7
  --- BisocketServerInvoker.java	22 Feb 2007 22:43:25 -0000	1.6
  +++ BisocketServerInvoker.java	23 Feb 2007 07:04:00 -0000	1.7
  @@ -22,21 +22,6 @@
   
   package org.jboss.remoting.transport.bisocket;
   
  -import org.jboss.logging.Logger;
  -import org.jboss.remoting.Client;
  -import org.jboss.remoting.InvocationRequest;
  -import org.jboss.remoting.InvokerLocator;
  -import org.jboss.remoting.Remoting;
  -import org.jboss.remoting.ServerInvocationHandler;
  -import org.jboss.remoting.invocation.InternalInvocation;
  -import org.jboss.remoting.socketfactory.CreationListenerServerSocket;
  -import org.jboss.remoting.socketfactory.CreationListenerSocketFactory;
  -import org.jboss.remoting.socketfactory.SocketCreationListener;
  -import org.jboss.remoting.transport.PortUtil;
  -import org.jboss.remoting.transport.socket.LRUPool;
  -import org.jboss.remoting.transport.socket.ServerThread;
  -import org.jboss.remoting.transport.socket.SocketServerInvoker;
  -
   import java.io.DataInputStream;
   import java.io.DataOutputStream;
   import java.io.IOException;
  @@ -53,11 +38,26 @@
   import java.util.Timer;
   import java.util.TimerTask;
   
  +import org.jboss.remoting.Client;
  +import org.jboss.remoting.InvocationRequest;
  +import org.jboss.remoting.InvokerLocator;
  +import org.jboss.remoting.Remoting;
  +import org.jboss.remoting.ServerInvocationHandler;
  +import org.jboss.remoting.invocation.InternalInvocation;
  +import org.jboss.remoting.socketfactory.CreationListenerServerSocket;
  +import org.jboss.remoting.socketfactory.CreationListenerSocketFactory;
  +import org.jboss.remoting.socketfactory.SocketCreationListener;
  +import org.jboss.remoting.transport.PortUtil;
  +import org.jboss.remoting.transport.socket.LRUPool;
  +import org.jboss.remoting.transport.socket.ServerThread;
  +import org.jboss.remoting.transport.socket.SocketServerInvoker;
  +import org.jboss.logging.Logger;
  +
   
   /**
    *
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.6 $
  + * @version $Revision: 1.7 $
    * <p>
    * Copyright Nov 23, 2006
    * </p>
  @@ -75,7 +75,8 @@
      private SecondaryServerSocketThread secondaryServerSocketThread;
      private Map controlConnectionThreadMap = new HashMap();
      private int pingFrequency = Bisocket.PING_FREQUENCY_DEFAULT;
  -   private int pingWindow = 2 * pingFrequency;
  +   private int pingWindowFactor = Bisocket.PING_WINDOW_FACTOR_DEFAULT;
  +   private int pingWindow = pingWindowFactor * pingFrequency;
      private ControlMonitorTimerTask controlMonitorTimerTask;
      protected boolean isCallbackServer = false;
   
  @@ -222,7 +223,20 @@
      public void setPingFrequency(int pingFrequency)
      {
         this.pingFrequency = pingFrequency;
  -      pingWindow = 2 * pingFrequency;
  +      pingWindow = pingWindowFactor * pingFrequency;
  +   }
  +   
  +   
  +   public int getPingWindowFactor()
  +   {
  +      return pingWindowFactor;
  +   }
  +   
  +   
  +   public void setPingWindowFactor(int pingWindowFactor)
  +   {
  +      this.pingWindowFactor = pingWindowFactor;
  +      pingWindow = pingWindowFactor * pingFrequency;
      }
   
   
  @@ -241,6 +255,41 @@
                     Bisocket.IS_CALLBACK_SERVER + "\": " + o);
         }
   
  +      o = configuration.get(Bisocket.PING_FREQUENCY);
  +      if (o instanceof String && ((String) o).length() > 0)
  +      {
  +            try
  +            {
  +               pingFrequency = Integer.valueOf(((String) o)).intValue();
  +            }
  +            catch (NumberFormatException e)
  +            {
  +               log.warn("Invalid format for " + "\"" + Bisocket.PING_FREQUENCY + "\": " + o);
  +            }
  +      }
  +      else if (o != null)
  +      {
  +         log.warn("\"" + Bisocket.PING_FREQUENCY + "\" must be specified as a String");
  +      }
  +      
  +      o = configuration.get(Bisocket.PING_WINDOW_FACTOR);
  +      if (o instanceof String && ((String) o).length() > 0)
  +      {
  +            try
  +            {
  +               pingWindowFactor = Integer.valueOf(((String) o)).intValue();
  +            }
  +            catch (NumberFormatException e)
  +            {
  +               log.warn("Invalid format for " + "\"" + Bisocket.PING_WINDOW_FACTOR + "\": " + o);
  +            }
  +      }
  +      else if (o != null)
  +      {
  +         log.warn("\"" + Bisocket.PING_WINDOW_FACTOR + "\" must be specified as a String");
  +      }
  +      
  +      pingWindow = pingWindowFactor * pingFrequency;
         super.setup();
      }
   
  
  
  



More information about the jboss-cvs-commits mailing list