예제 #1
0
  /**
   * そのプロジェクトで、シメに使われたビルドの中で最新のビルドを返す。
   *
   * @param project
   * @return
   * @throws IOException
   */
  public static AbstractBuild<?, ?> findNewestBuild(AbstractProject project) throws IOException {
    String shimeFileName = PMConstants.DATE_DAT_FILENAME;
    AbstractBuild<?, ?> prevBuild = PMUtils.findBuild(project, shimeFileName);

    if (prevBuild != null) {
      return prevBuild;
    }
    return null;
  }
예제 #2
0
  /**
   * そのビルドを含むプロジェクトの基準日ファイルをさがし、基準日を取得する。
   *
   * @param build
   * @throws IOException
   */
  public static File findBaseDateFile(AbstractProject project) throws IOException {
    String shimeFileName = PMConstants.DATE_DAT_FILENAME;
    AbstractBuild<?, ?> prevBuild = PMUtils.findBuild(project, shimeFileName);

    if (prevBuild != null) {
      File target = new File(prevBuild.getRootDir(), shimeFileName);
      return target;
    }
    return null;
  }
예제 #3
0
 /**
  * 渡されたプロジェクトのうち、渡されたファイルがビルドディレクトリに存在する、直近のビルドを探して、返します。
  *
  * @param project
  * @param fileName
  * @param out
  * @param err
  * @return
  */
 public static String findSeriesFile(
     AbstractProject<?, ?> project, String fileName, PrintStream out, PrintStream err) {
   AbstractBuild<?, ?> build = PMUtils.findBuild(project, fileName);
   if (build == null) {
     out.printf("EVM時系列情報ファイル(%s)がプロジェクト上に存在しないので、ファイルを新規作成します。\n", fileName);
     return null;
   } else {
     out.printf("EVM時系列情報ファイル(%s)が ビルド #%s 上に見つかりました。\n", fileName, build.getNumber());
   }
   try {
     return ReadUtils.readFile(new File(build.getRootDir(), fileName));
   } catch (IOException e) {
     err.println("EVM時系列情報ファイルを探す際にエラーが発生したので、ファイルを新規作成します。");
   }
   return null;
 }