• R/O
  • HTTP
  • SSH
  • HTTPS

tmdmaker: Commit

TMD-Maker(T字形ER図作成ツール)のEclipse Plugin,RCP,Webサイト用


Commit MetaInfo

Revisionf42b26ed0a3badb38f83372a52cf44e939fa3689 (tree)
Time2018-07-15 10:32:46
Authornakag <nakag@user...>
Commiternakag

Log Message

Update document. Extension Scaffold.

Change Summary

Incremental Difference

--- a/docs/tmdmaker.doc/src/site/sphinx/index.rst
+++ b/docs/tmdmaker.doc/src/site/sphinx/index.rst
@@ -4,14 +4,14 @@
44 contain the root `toctree` directive.
55
66 TMD-Maker ドキュメント
7-=======================
7+================
88
99 このドキュメントでは、TMD-Makerの説明とTMD-Makerを使ったTMD(T字形ER図)の作成方法を解説します。
1010
1111 ※内容はTMD-Makerの進化と、私のTM(T字形ER手法)の理解の深化に伴い順次更新します。
1212
13-目次:
14-------
13+目次
14+--
1515
1616 .. toctree::
1717 :maxdepth: 2
@@ -19,9 +19,11 @@ TMD-Maker ドキュメント
1919 p1
2020 p2
2121 p3
22+ p4
23+ p5
2224
2325 索引と検索
24------------
26+-----
2527
2628 * :ref:`genindex`
2729 * :ref:`search`
--- a/docs/tmdmaker.doc/src/site/sphinx/p1-ch2.rst
+++ b/docs/tmdmaker.doc/src/site/sphinx/p1-ch2.rst
@@ -7,6 +7,7 @@ TMD-Makerは日々バージョンアップしていますので、できない
77
88 TMD-Makerへ追加して欲しい機能があれば、`新規チケット <https://ja.osdn.net/ticket/newticket.php?group_id=4743>`_ でリクエストをください。
99
10+
1011 特徴
1112 --
1213
--- a/docs/tmdmaker.doc/src/site/sphinx/p1-ch4.rst
+++ b/docs/tmdmaker.doc/src/site/sphinx/p1-ch4.rst
@@ -1,8 +1,7 @@
11 TMD-Maker Pluginのインストール
22 =======================
33
4-TMD-Maker Pluginは、Eclipse
5-Pluginです。普段Eclipseを使用している人や、説明不足のマニュアル作成者に文句を言わずに自分で道を切り開ける人にお勧めします。少々脅してしまいましたが、あまり身構えずに一度深呼吸してから始めましょう。
4+TMD-Maker Pluginは、EclipseのPluginです。普段Eclipseを使用している人や、説明不足のマニュアル作成者に文句を言わずに自分で道を切り開ける人にお勧めします。少々脅してしまいましたが、あまり身構えずに一度深呼吸してから始めましょう。
65
76 動作環境
87 ----
@@ -17,7 +16,7 @@ Pluginです。普段Eclipseを使用している人や、説明不足のマニ
1716 - Eclipse 3.4 以上(4.7推奨)
1817
1918 現在、Eclipse
20- 4.7.0(Oxygen)で開発しています。またPluginの動作確認では、バージョン3.4.2以降を使用していますので、多分バージョン3.5以降と4.2以降で動作します。もしかしたらまだバージョン3.3でも動作するかも知れません。
19+ 4.8.0(Photon)で開発しています。またPluginの動作確認では、バージョン3.4.2以降を使用していますので、多分バージョン3.5以降と4.2以降で動作します。もしかしたらまだバージョン3.3でも動作するかも知れません。
2120
2221 - GEF(Eclipse Graphical Editing Framework)
2322
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p3-ch1.rst
@@ -0,0 +1,51 @@
1+拡張機能の雛形プロジェクトのセットアップ
2+====================
3+
4+まずは拡張機能を開発するための準備をしましょう。
5+
6+拡張機能の雛形プロジェクトダウンロード
7+-------------------
8+
9+tmdmaker\_extensionsのダウンロードサイトから
10+拡張機能の雛形プロジェクト、 `tmdmaker_extension_scaffold_x.y.z.zip <https://tmdmaker/ddlutils/>`_ をダウンロードします。
11+
12+解凍後にフォルダを任意の名前に変更してください。拡張機能の名前と合わせた方が分かりやすいです。
13+
14+Eclipseセットアップ
15+-------------
16+
17+Eclise 4.x系であれば多分大丈夫ですが、なるべく最新版をご利用ください。
18+
19+
20+拡張機能プロジェクトの取り込み
21+---------------
22+
23+EclipseのFile-ImportからExisting projects into WorkspaceでNextを選び
24+Select root directoryで拡張機能のフォルダを選択してFinishを選択します。
25+インポート後にプロジェクトフォルダをリファクタリングして拡張機能に名前を付けます。
26+
27+拡張機能の依存関係解決
28+-----------
29+
30+まだプロジェクトにエラーが出ていますのTMD-Makerの必須プラグインとの依存関係を解決しましょう。
31+プロジェクトフォルダ直下のplugin-development.targetを開き
32+右上のReload Target Platformをクリックしてください。
33+しばらく待つとエラーが消えます。
34+
35+お疲れ様でした。拡張機能の開発準備が整いました。
36+
37+雛形の説明
38+-----
39+雛形には以下のクラスが既に用意されています。これらのクラスはplugin.xmlで関連付けされています。
40+
41+- tmdmaker.extensions.scaffold.Actovator
42+
43+ 拡張機能起動時に呼び出されます。雛形では特に何もやっていません。
44+
45+- tmdmaker.extensions.scaffold.importer.FileImporter1
46+
47+ tmdmaker.importersを実装するインターフェースを継承したクラス。今回は特に紹介しませんが、興味があれば挑戦してみてください。
48+
49+- tmdmaker.extensions.scaffold.generator.Generator1
50+
51+ tmdmaker.generatorsを実装するインターフェースを継承したクラス。これからサンプルを実装します。
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p3-ch2.rst
@@ -0,0 +1,51 @@
1+Generator拡張機能作成
2+===============
3+
4+それでは拡張機能を開発していきましょう。
5+まずはGeneratorを拡張した簡単なファイル出力サンプルを作成します。
6+
7+コンテキストメニューに表示する名前を決める
8+---------------------
9+
10+以下のメソッドをオーバーライドするとコンテキストメニューに表示する名前が決まります。グループ名はコンテキストメニュー表示される順番に影響します。::
11+
12+ @Override
13+ public String getGeneratorName() {
14+ return "エンティティ一覧";
15+ }
16+
17+ @Override
18+ public String getGroupName() {
19+ // TODO Auto-generated method stub
20+ return "雛形グループ";
21+ }
22+
23+モデルの情報をファイルに出力する
24+----------------
25+
26+以下が実行時の処理です。ファイルを作成してモデルの情報を出力しています。::
27+
28+ @Override
29+ public void execute(String rootDir, List<AbstractEntityModel> models) {
30+ File file = new File(rootDir, "entity_name.txt");
31+ PrintWriter writer = null;
32+
33+ try {
34+ writer = new PrintWriter(file, "UTF-8");
35+ for (AbstractEntityModel model : models) {
36+ writer.print(model.getName());
37+ writer.print(",");
38+ writer.println(model.getEntityType());
39+ }
40+ } catch (Exception e) {
41+ // TODO: 例外をthrow
42+ } finally {
43+ if (writer != null) {
44+ writer.flush();
45+ writer.close();
46+ }
47+ }
48+ }
49+
50+
51+これだけです。モデルの構成やEclipse Pluginの仕組みを理解すれば、より高度なデータ出力が実現可能です。
\ No newline at end of file
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p3-ch3.rst
@@ -0,0 +1,26 @@
1+Generator拡張機能実行
2+===============
3+
4+最後に作成した拡張機能を実行します。
5+拡張機能のjarファイルを作成してTMD-Makerにインストールして拡張機能を動かしてみましょう。
6+
7+サンプル拡張機能をエクスポート
8+---------------
9+
10+1. plugin.xmlを開きます。
11+2. Overviewタブの右下、Export Wizardをクリックします。
12+3. DestinationタブのDirectoryで任意の出力先を指定してFinishボタンをクリックします。
13+4. 出力先のpluginsフォルダ内にjarファイルが作成されます。
14+
15+サンプル拡張機能をインストール
16+---------------
17+
18+TMD-Makerのフォルダ配下のdropinsフォルダにjarファイルを配置した後、TMD-Makerを実行します。
19+
20+TMD-Makerで動作確認
21+--------------
22+
23+エディタ内で右クリックした時にコンテキストメニューに表示された拡張機能選択してみましょう。
24+ファイルが出力されましたか?
25+
26+
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p3-ch4.rst
@@ -0,0 +1,8 @@
1+拡張機能まとめ
2+=======
3+
4+今回はGeneratorのサンプルを作成してみました。
5+FileImporterについても興味があれば是非挑戦してみてください。
6+
7+またTMD-Makerのモデル自体や他の機能も公開されていますので
8+皆でTMD-Makerをより良いものにしていきましょう。
--- a/docs/tmdmaker.doc/src/site/sphinx/p3.rst
+++ b/docs/tmdmaker.doc/src/site/sphinx/p3.rst
@@ -1,10 +1,30 @@
1-リファレンス
2-=============
1+TMD-Makerの機能を拡張する
2+=================
3+
4+このパートでは、TMD-Makerの機能拡張の作成方法を説明します。
5+
6+TMD-Makerは機能を拡張できるポイントをいくつか持っています。
7+この機能拡張ポイントを利用して独自の機能拡張を作成することができます。
8+現在利用可能な機能拡張ポイントは以下の通りです。
9+
10+1. tmdmaker.generators
11+
12+ TMD-Makerのモデルから、別フォーマットのファイルを生成できます。
13+ htmlやDDL、Sphinx、csv形式のドキュメント出力機能もこの拡張ポイントを使っています。
14+
15+2. tmdmaker.importers
16+
17+ 別フォーマットのファイルからTMD-Makerのモデルを生成できます。
18+ csv形式からTMD-Makerへのインポート機能もこの拡張ポイントを使っています。
19+
20+TMD-MakerはEclipse Pluginで作成されていますが、
21+紹介する雛形のプロジェクトを利用すればEclipse Pluginが分からなくても、Javaが書ければ多分大丈夫!
22+是非挑戦してみてください。
323
424 .. toctree::
525 :maxdepth: 2
626
7- rcp
8- database
9- csvformat
10- faq
27+ p3-ch1
28+ p3-ch2
29+ p3-ch3
30+ p3-ch4
\ No newline at end of file
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p4.rst
@@ -0,0 +1,17 @@
1+TMD-Makerの開発に参加する
2+=================
3+
4+このパートでは、TMD-Makerの開発方法を説明します。
5+
6+TMD-Makerはosdnを利用しています。
7+
8+開発に必要な情報は以下に記載しています。随時更新してます。
9+
10+https://osdn.net/projects/tmdmaker/wiki/Development
11+
12+osdnは無料なのでアカウント登録したら是非以下のページからメンバー参加してみてください。
13+
14+https://osdn.net/projects/tmdmaker/memberlist/
15+
16+.. toctree::
17+ :maxdepth: 2
--- /dev/null
+++ b/docs/tmdmaker.doc/src/site/sphinx/p5.rst
@@ -0,0 +1,10 @@
1+リファレンス
2+=============
3+
4+.. toctree::
5+ :maxdepth: 2
6+
7+ rcp
8+ database
9+ csvformat
10+ faq
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -61,8 +61,14 @@
6161 </links>
6262
6363 <menu name="ドキュメント" inherit="top">
64- <item name="マニュアル" href="./doc/index.html" />
65- <item name="よくある質問" href="./doc/faq.html" />
64+ <item name="リリースバージョン" >
65+ <item name="マニュアル" href="./doc/index.html" />
66+ <item name="よくある質問" href="./doc/faq.html" />
67+ </item>
68+ <item name="Latest" >
69+ <item name="マニュアル" href="https://tmdmaker.readthedocs.io/ja/latest/index.html" />
70+ <item name="よくある質問" href="https://tmdmaker.readthedocs.io/ja/latest/faq.html" />
71+ </item>
6672 </menu>
6773
6874 <menu name="プロジェクト" inherit="top">
Show on old repository browser