View Javadoc

1   /**
2    *
3    * Copyright 2006 The Apache Software Foundation
4    *
5    *  Licensed under the Apache License, Version 2.0 (the "License");
6    *  you may not use this file except in compliance with the License.
7    *  You may obtain a copy of the License at
8    *
9    *     http://www.apache.org/licenses/LICENSE-2.0
10   *
11   *  Unless required by applicable law or agreed to in writing, software
12   *  distributed under the License is distributed on an "AS IS" BASIS,
13   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   *  See the License for the specific language governing permissions and
15   *  limitations under the License.
16   */
17  
18  //
19  // This source code implements specifications defined by the BEA and IBM.
20  // For more information, see:
21  //    http://dev2dev.bea.com/technologies/commonj/index.jsp
22  // or
23  //    http://www.ibm.com/developerworks/library/j-commonj-sdowmt
24  //
25  // In order to remain compliant with the specification
26  // DO NOT add / change / or delete method signatures!
27  //
28  
29  package commonj.timers;
30  
31  import java.util.Date;
32  
33  /**
34   * @version $Rev: 46019 $ $Date: 2004-09-14 05:56:06 -0400 (Tue, 14 Sep 2004) $
35   */
36  public interface TimerManager {
37  
38      static final long IMMEDIATE = 0;
39      static final long INDEFINITE = java.lang.Long.MAX_VALUE;
40  
41      boolean isStopped();
42  
43      boolean isStopping();
44  
45      boolean isSuspended() throws IllegalStateException;
46  
47      boolean isSuspending() throws IllegalStateException;
48  
49      void resume() throws IllegalStateException;
50  
51      Timer schedule(TimerListener listener, long delayInMillis)
52          throws IllegalStateException, IllegalArgumentException;
53  
54      Timer schedule(TimerListener listener, long delayInMillis, long repeatIntervalInMillis)
55          throws IllegalStateException, IllegalArgumentException;
56  
57      Timer schedule(TimerListener listener, Date scheduleDate)
58          throws IllegalStateException, IllegalArgumentException;
59  
60      Timer schedule(TimerListener listener, Date scheduleDate, long repeatIntervalInMillis)
61          throws IllegalStateException, IllegalArgumentException;
62  
63      Timer scheduleAtFixedRate(TimerListener listener, long delayInMillis, long repeatIntervalInMillis)
64          throws IllegalStateException, IllegalArgumentException;
65  
66      Timer scheduleAtFixedRate(TimerListener listener, Date scheduleDate, long repeatIntervalInMillis)
67          throws IllegalStateException, IllegalArgumentException;
68  
69      void stop() throws IllegalStateException;
70  
71      void suspend() throws IllegalStateException;
72  
73      boolean waitForStop(long timeOut)
74          throws InterruptedException, IllegalArgumentException;
75  
76      boolean waitForSuspend(long timOut)
77          throws InterruptedException, IllegalStateException, IllegalArgumentException;
78  
79  }