JP1/AJS2 Jobdocをリカバリージョブに対応させた
思い立ったが吉日というかなんというか。ふと、以前このブログでも紹介したJP1/AJS2ユニット定義ドキュメント化ツールの生成するSVGがリカバリージョブに対応していないことに気がついて、テンプレートとロジックを修正しました。Githubのリポジトリ・ページはこちら。
リカバリージョブは先行するジョブユニットが異常終了のステータスとなったときにだけ起動する特殊なユニットです。JP1/AJS2 View上、リカバリージョブはアイコン右上に赤い四角に「R」の文字でマーキングされます。またリカバリージョブを指す(後続ジョブとして指定する)関連線は赤色で表示されます。
例えば以下のようなユニット定義があるとします:
unit=FOON0000,AAAAA,BBBBB,CCCCC;
{
ty=n;
sz=5×5;
el=.CONDITION,n,+0 +0;
el=BARN0001,n,+80 +48;
el=BARN0002,rn,+240 +144;
el=BARN0003,n,+240 +48;
el=BAZN0001,pj,+400 +48;
ar=(f=BARN0001,t=BARN0002);
ar=(f=BARN0001,t=BARN0003);
ar=(f=BARN0003,t=BAZN0001);
unit=.CONDITION,AAAAA,BBBBB,CCCCC;
{
ty=rc;
cm="起動条件";
}
unit=BARN0001,AAAAA,BBBBB,CCCCC;
{
ty=n;
cm="ふつうのジョブネット";
sz=5×5;
}
unit=BARN0002,AAAAA,BBBBB,CCCCC;
{
ty=rn;
cm="リカバリージョブネット";
sz=5×5;
}
unit=BARN0003,AAAAA,BBBBB,CCCCC;
{
ty=n;
cm="ふつうのジョブネット";
sz=5×5;
}
unit=BAZN0001,AAAAA,BBBBB,CCCCC;
{
ty=pj;
cm="ふつうのPCジョブ";
sc="foo/bar/baz.exe";
}
}これをツールで処理すると:
java -jar jp1ajs2.jobdoc-1.5.1-RELEASE-jar-with-dependencies.jar \ -s src/test/resources/SAMPLE.unitdef \ --source-file-charset utf-8 \ -t FOON0000
出力されたドキュメントでは以下のようなマップ表示になります:
