現在、分散システムの監視に関する私の卒業論文を書いています。この目的のために、私はモニタリングデータを記録し、このデータを一連のフィルタ(パイプとフィルタスタイル)で分析できるフレームワークを設計しました。これはKieker monitoring frameworkに基づいています。Javaで実行可能なパイプとフィルタグラフ
あなたはそうのように、出力ポートに加入することにより、互いに異なるフィルタを接続することができます。
DurationFilter durationFilter = new DurationFilter();
Timeline timeline = new Timeline(...);
durationFilter.getOutputPort().subscribe(timeline);
このメカニズムは、私が使用していますKiekerフレームワークによって提供されます。
分析を実行するには、ユーザーは現在、コードを書き出すことによって手動でフィルタを接続する必要があります。私が今やってみたいのは、GUI(フィルタ、入力ファイル、接続のセット)を簡単に作成できるツールを書くことです。理想的には、ユーザはボックス(フィルタ)を作成し、それらを線(接続)で接続し、入力(入力ファイル)などのパラメータを設定するUMLエディタのように行うことができます。
これらの設定は、グラフからJavaコードへのマッピングが必要です。それはこれまでの私の考えでした。第1に、このアプローチはこの作業にとって正しいアプローチだと思いますか?
私の研究では、今述べた多くの機能を備えたフレームワークJHotDrawが見つかりました。 JHotDrawを使用して、要素を作成、編集、および接続するための一連のツールを含む、描画領域(DrawingEditor)上にビジュアル要素(Figure)を作成できます。これは私がやったことはかなり簡単です。ボーナスはJHotDrawのアンドゥ/リドゥ機能です。
私の問題:私はどのように私は、エディタのグラフィカル表現からJavaコードに到達するはずです。私が持っているのは、フレームワークがおそらく使用しているMVCパターンのV部分です。図はビューです。しかし、モデルはどこに行き、フレームワークにどのように統合されますか?私は、DrawingEditorに表示されるすべての要素について、その要素のデータを格納する対応するモデルを用意する必要があると考えています。 FilterModelには、入力データ型(処理できるデータ)、出力ポートとそのデータ型(作成するデータの種類)、フィルターの種類(Javaクラスに対応)などの属性があります。あるフィルタが別のフィルタに接続できるかどうかを確認し、最後にすべてを実行する必要があります。
自分自身を明確にしているかどうかはわかりません。不明な点がある場合はお尋ねください。
私はすることができたJHotDrawのグラフの例である:[画像](http://img542.imageshack.us/img542/5168/editordemo.png)。 – zerus
もう一つの技術は[GEF](http://www.eclipse.org/gef/)です。 – sudocode