ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

asakusa サブコマンド

2020-12-14 00:00:00 | PG(分散処理)

Asakusa Framework Advent Calendar 2020の14日目です。

Asakusa CLIはasakusaコマンド(Linuxのシェル、Windows(DOS)のcmdファイル)で実行します。
asakusaコマンドは第1引数に以下のようなサブコマンドを渡すようになっており、その内容によって処理内容が大きく異なります。

  • version … バージョンの表示
  • list … 情報の表示
  • generate … 図の生成
  • run … バッチの実行
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Asakusa CLI

2020-12-13 23:33:02 | PG(分散処理)

Asakusa Framework Advent Calendar 2020の13日目です。

Asakusa Framework 0.10から、Asakusa CLI(asakusaコマンド)というものが使えるようになっています。
これは実行環境で使用し、Asakusaアプリケーション(AsakusaFWで開発したアプリケーション)の様々な情報を表示するものです。

実行環境とは、基本的には本番運用環境というイメージですが、フローの(JUnitの)テストに使用する開発環境でも(環境変数を設定すれば)使用することが出来ます。
asakusaコマンドで表示される中身は、むしろ開発環境の方が威力を発揮するものが多いと思います。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AsakusaFW Batch parameters

2020-12-12 23:59:59 | PG(分散処理)

Asakusa Framework Advent Calendar 2020の12日目です。

Asakusa FrameworkのBatchアノテーションでは、parametersでバッチ引数の名前やコメント・値のパターンや必須かどうかを記述することが出来ます。
記述しなくてもバッチの実行は出来ますが、後述するasakusaコマンド等でバッチの情報を表示した際には、ここで記述した内容が表示されます。

Operatorでどのクラスを使っているかを自動収集してくれるといいんですが、そういう機能はありません。
Batchから呼び出しているJobFlowやOperatorメソッドくらいまでは自動収集できますが、その先は普通にJavaプログラムの中なので、BatchContextを使っているかどうかまで探すのは難しいと思います…。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AsakusaFW Importer/Exporterでのバッチ引数

2020-12-11 22:08:48 | PG(分散処理)

Asakusa Framework Advent Calendar 2020の11日目です。

Asakusa Frameworkのバッチ引数は、Importer/Exporter(入出力ファイル定義)の中でも使えます。
例えばファイル名やファイルのパスの一部に使用できます。
ただ、通常のJavaのコーディングと違って、事前に引数の値を加工するタイミングが無いので、たまに不便に思うときがありますね…。
(バッチ引数がYYYY-MM-DDで、Importer/ExporterではYYYYMMDDで使いたい場合とか)

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AsakusaFW BatchContext+Shared

2020-12-10 00:00:00 | PG(分散処理)

Asakusa Framework Advent Calendar 2020の10日目です。

BatchContextを扱うクラスを用意することのメリットのひとつが、データ型を変換して保持するようなコーディングが出来ることです。

public class BatchContextUtil {
  static String getDateAsString() {
    return BatchContext.get("date");
  }
  public static Date getDate() {
    return SharedUtil.getDate(); //この中でBatchContextUtil.getDateAsString()を呼び出す
  }
}

BatchContextから取得する値はバッチ実行中は変化しないので、「変化しない値を保持するShared」と相性が良いです。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする