cvs commit: spice/sandbox/sca/src/test/org/realityforge/sca/connector ConnectorTestCase.java

Peter Donald <[email protected]> Thu, 20 Nov 2003 20:56:23 -0600
Newsgroups gmane.comp.java.spice.cvs
Message-ID <[email protected]>
pdonald     2003/11/20 20:56:23

  Modified:    sandbox/sca/src/java/org/realityforge/sca/connector
                        Connector.java
               sandbox/sca/src/test/org/realityforge/sca/connector
                        ConnectorTestCase.java
  Log:
  Rework code so that attempting validation moinitor method is only called when actually attempting validation
  
  Revision  Changes    Path
  1.5       +9 -16     spice/sandbox/sca/src/java/org/realityforge/sca/connector/Connector.java
  
  Index: Connector.java
  ===================================================================
  RCS file: /scm/cvs/spice/sandbox/sca/src/java/org/realityforge/sca/connector/Connector.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- Connector.java	19 Nov 2003 03:29:06 -0000	1.4
  +++ Connector.java	21 Nov 2003 02:56:23 -0000	1.5
  @@ -15,22 +15,16 @@
       /** The associated reconnection policy for connector. */
       private ReconnectionPolicy _reconnectPolicy = AlwaysReconnectPolicy.POLICY;
   
  -    /**
  -     * The associated monitor that receives events about connector.
  -     */
  +    /** The associated monitor that receives events about connector. */
       private ConnectorMonitor _monitor = NullMonitor.MONITOR;
   
       /** The underlying connection. */
       private ConnectorConnection _connection;
   
  -    /**
  -     * A flag indicating whether the connection is "active".
  -     */
  +    /** A flag indicating whether the connection is "active". */
       private boolean _active;
   
  -    /**
  -     * A flag indicating whether the connection is "connected".
  -     */
  +    /** A flag indicating whether the connection is "connected". */
       private boolean _connected;
   
       /** Time at which last transmission occured. */
  @@ -54,9 +48,7 @@
       /** The time the last connection attempt started. */
       private long _lastConnectionTime;
   
  -    /**
  -     * Number of sequential failed connection attempts.
  -     */
  +    /** Number of sequential failed connection attempts. */
       private int _connectionAttempts;
   
       /** The reason the last conenction attempt failed. */
  @@ -326,9 +318,10 @@
   
               while( !isConnected() && isActive() )
               {
  -                if( !getReconnectPolicy().attemptConnection(
  -                    _lastConnectionTime,
  -                    _connectionAttempts ) )
  +                final boolean connect = getReconnectPolicy().
  +                    attemptConnection( _lastConnectionTime,
  +                                       _connectionAttempts );
  +                if( !connect )
                   {
                       getMonitor().skippingConnectionAttempt();
                       return;
  @@ -447,13 +440,13 @@
       {
           synchronized( getSyncLock() )
           {
  -            getMonitor().attemptingValidation();
               if( !verifyConnected() )
               {
                   return false;
               }
               else
               {
  +                getMonitor().attemptingValidation();
                   doValidateConnection();
                   return isConnected();
               }
  
  
  
  1.3       +8 -2      spice/sandbox/sca/src/test/org/realityforge/sca/connector/ConnectorTestCase.java
  
  Index: ConnectorTestCase.java
  ===================================================================
  RCS file: /scm/cvs/spice/sandbox/sca/src/test/org/realityforge/sca/connector/ConnectorTestCase.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ConnectorTestCase.java	19 Nov 2003 03:29:06 -0000	1.2
  +++ ConnectorTestCase.java	21 Nov 2003 02:56:23 -0000	1.3
  @@ -485,7 +485,6 @@
         final ConnectorConnection connection = (ConnectorConnection) connectorMock.proxy();
   
         final Mock monitorMock = new Mock( ConnectorMonitor.class );
  -      monitorMock.expect( "attemptingValidation", C.NO_ARGS );
         final ConnectorMonitor monitor = (ConnectorMonitor) monitorMock.proxy();
   
         final Mock policyMock = new Mock( ReconnectionPolicy.class );
  @@ -635,9 +634,15 @@
         policyMock.expectAndReturn( "nextPingCheck", C.NO_ARGS, new Long( 52 ) );
         final PingPolicy policy = (PingPolicy) policyMock.proxy();
   
  +      final Mock connMock = new Mock( ConnectorConnection.class );
  +      connMock.expect( "doValidateConnection", C.NO_ARGS );
  +      final ConnectorConnection conn = (ConnectorConnection)connMock.proxy();
  +
         connector.setMonitor( monitor );
         connector.setPingPolicy( policy );
  -      connector.setActive( false );
  +      connector.setConnection( conn );
  +      connector.setActive( true );
  +      connector.setConnected( true );
   
         final long result = connector.checkPing();
         assertEquals( "result", 52, result );
  @@ -646,6 +651,7 @@
   
         policyMock.verify();
         monitorMock.verify();
  +      connMock.verify();
      }
   
      public void testCheckPingThatNoPings()