スクリプトエディタ

ライセンス : Apache2.0 | 本プラグインは、最新版のastah*製品に同梱されています。(astah* GSNを除く)

ECMAScript(JavaScript)で、APIを使用してastah*のモデルにアクセスできます。
特定のモデルデータを抜き出す、モデルを一括削除する、条件指定でステレオタイプを一括追加するなど標準搭載されていない機能を簡単に実行できます。

概要

利用方法

  1. スクリプトを実行したいプロジェクトファイルを開きます。
  2. [ツール] - [スクリプトエディタ](または、[スクリプト])を選択してエディタを開きます。
    astahプラグイン
  3. 上段にスクリプトを入力するか、またはスクリプトエディタのメニュー[ファイル] - [開く]を選択し、予め用意しておいたJavaScriptのファイルを開きます。(サンプルスクリプト
    astah, アスター, スクリプトプラグイン
  4. ツールバーの三角ボタンを押下するか、スクリプトエディタのメニュー[アクション] - [実行]を選択します。
    (ショートカットキー[Ctrl+R]でも実行できます)
    astah, アスター, スクリプトプラグイン
  5. 下段に実行結果が表示されます。
    astah, アスター, スクリプトプラグイン
  6. 入力したスクリプトは [ファイル] - [名前を付けて保存]で保存できます。

サンプルスクリプト

サンプルスクリプトは、「Scriptプラグインで、すぐに使えるサンプル集」をご覧ください。
プラグインでご利用の方は、ダウンロードした[sample_scripts]フォルダ内に、下記の合計15ケのJavaScriptサンプルファイルが格納されています。

addSetterGetter 選択した属性に対するSetter/Getter操作を追加
addStereotypeToSelectedModel.js 選択したモデルにステレオタイプを追加
checkEdition.js 起動中のエディションを表示
countClasses.js 開いているプロジェクトファイルに含まれるクラスの数を表示
createAndOpenDiagram.js 新しいクラス図を作成
createEREntities.js 指定した論理名・物理名を用いてERエンティティを作成
exportCsv.js CSV形式で出力
printClasses.js 開いているプロジェクトファイルに含まれるクラスの名称を表示
printERIndex ERモデル中に定義されているインデックスの情報を列挙
printMindmapTopics.js 開いているマインドマップのトピックをリスト表示
printPackageAndClassInfo.js パッケージ名、クラス名を列挙
printPresentationProperties.js 選択した図要素のプロパティをリスト表示
searchAndEdit.js キーワードを含むクラスを検索し、色を設定、ノートを付加
searchMessagesWithoutOperation.js シーケンス図の操作が指定されていないメッセージを検索
useJavaGUI.js ダイアログが表示され、Java GUIを使用できる

スクリプトのサンプルコードは、ご利用のJavaのバージョンで、スクリプトの表記が異なります。astah* professional/UML/community 6.9以前をご利用の場合は、[sample scripts] - [java7]フォルダをご参照ください。(一部のサンプルスクリプトはモデル編集のAPIを必要とするため、astah* community版では利用できません)



解説

▶定義済みの変数を使えます。

projectAccessor astah APIのprojectAccessorオブジェクトで、nullの場合はastahにプロジェクトが存在しない。
astah projectAccessorと同じ。
astahWindow astahのメインウィンドウオブジェクト
scriptWindow スクリプトプラグインのウィンドウオブジェクト

▶スクリプトで astah APIを使えます。



動作環境によるスクリプトの修正について

astah* professional、UML、community 7.0、astah* GSN 1.1以降は、システム要件のJavaバージョンが8にあがりました。
astah* professional、UML、community 6.9以前、あるいはastah* GSN 1.0以前のバージョンで作成した jre7用のスクリプトは、下記のように修正してご利用ください。

★importPackageの修正

修正前

importPackage(com.change_vision.jude.api.inf.editor);
//use the classes in the package

修正方法1:JavaImporterを用いる

with(new JavaImporter(com.change_vision.jude.api.inf.editor)) {
//use the classes in the package
}

修正方法2:"nashorn:mozilla_compat.js"を読み込む

load("nashorn:mozilla_compat.js");
importPackage(com.change_vision.jude.api.inf.editor);
//use the classes in the package

修正方法3:Java.typeを用いる

var TransactionManager = Java.type("com.change_vision.jude.api.inf.editor.TransactionManager");
//use the class

★println の修正

修正前

println("astah*");

修正方法1:printlnをprintに書き換える

print("astah*");

修正方法2:println=print;を追加する

println = print;
println("astah*");

★.class の修正

修正前

var classes = astah.findElements(IClass);

修正方法:.classを追加する

var classes = astah.findElements(IClass.class);

★その他

その他の修正は、こちらをご参照ください。



他のスクリプト言語を使う

OSGi bundleかつJSR223準拠のjarを利用することで、他のスクリプト言語を使用できます。

  1. 使用したいスクリプト言語の jarファイルをダウンロードします。(例: groovy-all.jar, jruby-###.jar)
  2. 1のjarファイルを、ユーザーホーム配下にあるpluginsフォルダにコピーします。
    (例) astah* professionalの場合は、ユーザーホーム/.astah/professional/pluginsフォルダにコピー
  3. astah*を起動します。


インストール(旧バージョンをご使用の方)

以下のバージョンは、インストールが必要です。
ご利用の製品を選択し、インストール方法を確認してください。




・astah* professional・UML Ver6.6 ~ Ver7.1へインストール

  1. ページ上部のDownloadボタンから astah_script_plugin-x.x.x.zip ファイルをダウンロードして任意のフォルダへ展開します。
    展開したフォルダの"sample_scripts"フォルダには、12種のサンプルJSファイルが格納されています。
  2. .jarファイルを、astah*図上にドラッグ&ドロップします。
  3. プラグイン概要のダイアログが表示されるので[はい]を選択します。
  4. 次に表示されるメッセージに従ってastah*を再起動します。
    astahプラグイン
  5. [ツール]メニュー配下に、[スクリプト]が追加されていることをご確認ください。
    astah, アスター, スクリプトプラグイン
  6. では、プラグインを使ってみましょう。利用方法をご参照ください。



・astah* SysML Ver1.3 ~ Ver1.5へインストール

  1. ページ上部のDownloadボタンから astah_script_plugin-x.x.x.zip ファイルをダウンロードし、任意のフォルダへ展開します。
  2. メインメニューから[ヘルプ] - [プラグイン一覧]を選択します
    astahプラグイン
  3. プラグイン一覧ダイアログが開きます。[インストール]ボタンを押して、ダウンロードした.jarファイルを選択します。
    astahプラグイン
  4. 次に表示されるメッセージに従ってastah*を再起動します。
    astahプラグイン
  5. [ツール]メニュー配下に、[スクリプト]が追加されていることをご確認ください。
    astah, アスター, スクリプトプラグイン
  6. では、プラグインを使ってみましょう。利用方法をご参照ください。



・astah* GSN Ver1.0 ~ Ver1.2へインストール

  1. astah*を起動している場合は、終了します
  2. ページ上部のDownloadボタンから astah_script_plugin-x.x.x.zip ファイルをダウンロード、任意のフォルダへ展開します。
    .jarファイルを次のディレクトリに保存します。
    <ユーザホーム>/.astah/gsn/plugins
  3. astah* GSNを起動して、[ツール]メニュー配下に[スクリプト]が追加されていることをご確認ください。
    astah, アスター, スクリプトプラグイン
  4. では、プラグインを使ってみましょう。利用方法をご参照ください。