sebb        2005/03/13 11:08:12

  Modified:    src/core/org/apache/jmeter/control Tag: rel-2_0 RunTime.java
  Log:
  Bug33559
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.1.2.3   +17 -10    
jakarta-jmeter/src/core/org/apache/jmeter/control/RunTime.java
  
  Index: RunTime.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/control/RunTime.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- RunTime.java      12 Jun 2004 14:14:23 -0000      1.1.2.2
  +++ RunTime.java      13 Mar 2005 19:08:12 -0000      1.1.2.3
  @@ -34,7 +34,7 @@
       //NOTUSED private static Logger log = LoggingManager.getLoggerForClass();
   
       private final static String SECONDS = "RunTime.seconds";
  -    private long startTime = 0;
  +    private volatile long startTime = 0;
   
       public RunTime()
       {
  @@ -72,21 +72,31 @@
        */
       public boolean isDone()
       {
  -        if (System.currentTimeMillis()-startTime < 1000*getRuntime())
  +        if (getRuntime() > 0 && getSubControllers().size() > 0)
           {
               return super.isDone();
           }
           else
           {
  -            return true;
  +            return true; // Runtime is zero - no point staying around
           }
       }
   
       private boolean endOfLoop()
       {
  +             if (startTime == 0) startTime=System.currentTimeMillis();
           return System.currentTimeMillis()-startTime >= 1000*getRuntime();
       }
   
  +     public Sampler next()
  +     {
  +             if (endOfLoop()){
  +                     startTime=0; // Make sure it will be reset next time
  +                     reInitialize();
  +                     return null;
  +             }
  +             return super.next();
  +     }
       /* (non-Javadoc)
        * @see org.apache.jmeter.control.GenericController#nextIsNull()
        */
  @@ -95,7 +105,8 @@
           reInitialize();
           if (endOfLoop())
           {
  -            setDone(true);
  +                     startTime=0; // Make sure it will be reset next time
  +            //setDone(true);
               return null;
           }
           else
  @@ -104,8 +115,4 @@
           }
       }
   
  -     protected void resetIterCount()
  -     {
  -             startTime=System.currentTimeMillis();
  -     }
   }
  \ No newline at end of file
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to