Subversion Repositories DevTools

Rev

Rev 7033 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.erggroup.buildtool.ripple;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.erggroup.buildtool.ripple.RunLevel.BuildState;

/**Representation of a row in the RUN_LEVEL table
 */
public class RunLevelData
{
  int mRcon_id;                             // Daemon ID
  int mCurrent_run_level;                   // Run Level
  char mMode;                               // Daemon Mode
  int mBuildFile;                           // Build File Present
   
  /**Logger
   * @attribute
   */
  private static final Logger mLogger = LoggerFactory.getLogger(RunLevelData.class);

        /**constructor
         * @param mode 
         * @param buildFilePresent 
   */
  public RunLevelData(int rcon_id, int current_run_level, char mode, int buildFilePresent)
  {
    mLogger.debug("RunLevel");
    mRcon_id = rcon_id;
    mCurrent_run_level = current_run_level;
    mMode = mode;
    mBuildFile = buildFilePresent;
  }
  
  public RunLevelData(int rcon_id, BuildState buildState, char mode, int buildFilePresent)
  {
      mLogger.debug("RunLevel");
      mRcon_id = rcon_id;
      mCurrent_run_level = buildState.toValue();
      mMode = mode;
      mBuildFile = buildFilePresent;
  }

/**accessor method
   */
  public int get_rcon_id()
  {

    mLogger.info("get_rcon_id returned " + mRcon_id);
    return mRcon_id;
  }

  /**
   * Run Level Testing
   */
  public boolean isAt(BuildState buildState)
  {
      return mCurrent_run_level == buildState.toValue();
  }
  
  public boolean isMaster()
  {
      return mMode == 'M';
  }
  
  public boolean hasBuildFile()
  {
      return mBuildFile != 0; 
  }

  /**
   * Run Level Testing
   * Used by Unit Test Only
   */
  public static boolean isAt(BuildState buildState, Integer integer)
  {
      return integer == buildState.toValue();
  }

}