Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
814 mhunt 1
package com.erggroup.buildtool.daemon;
2
 
3
import com.erggroup.buildtool.ripple.ReleaseManager;
4
 
5
import org.apache.log4j.Logger;
6
 
7
/**Enumeration of supported run levels
8
 */
9
public class RunLevel
10
{
11
  /**enumeration
12
   * @attribute
13
   */
14
  public static final RunLevel CANNOT_CONTINUE = new RunLevel( ReleaseManager.DB_CANNOT_CONTINUE );
15
 
16
  /**enumeration
17
   * @attribute
18
   */
19
  public static final RunLevel PAUSED = new RunLevel( ReleaseManager.DB_PAUSED );
20
 
21
  /**enumeration
22
   * @attribute
23
   */
24
  public static final RunLevel ACTIVE = new RunLevel( ReleaseManager.DB_ACTIVE );
25
 
26
  /**enumeration
27
   * @attribute
28
   */
29
  public static final RunLevel IDLE = new RunLevel( ReleaseManager.DB_IDLE );
30
 
31
  /**enumeration
32
   * @attribute
33
   */
34
  public static final RunLevel WAITING = new RunLevel( ReleaseManager.DB_WAITING );
35
 
36
  /**Logger
37
   * @attribute
38
   */
39
  private static final Logger mLogger = Logger.getLogger(RunLevel.class);
40
 
41
  /**integer value
42
   * @attribute
43
   */
44
  private final int mLevel;
45
 
46
  /**constructor
47
   */
48
  private RunLevel(int level)
49
  {
50
    mLevel = level;
51
  }
52
 
53
  /**updates (advertises) the run level in the database
54
   * refer to sequence diagrams
55
   */
56
  public void persist(ReleaseManager releaseManager, int rcon_id) throws Exception
57
  {
58
    mLogger.debug("persist " + rcon_id + " " + mLevel);
59
    releaseManager.updateCurrentRunLevel(rcon_id, mLevel);
60
  }
61
}