プロジェクトごとの設定
backport175のソースを見たら、簡単だった。
// 保存 IScopeContext projectScope = new ProjectScope(project); IEclipsePreferences node = projectScope.getNode(PLUGIN_ID); node.put("isEnable", Boolean.toString(isEnable)); node.flush(); // 取得 IScopeContext projectScope = new ProjectScope(project); IEclipsePreferences node = projectScope.getNode(PLUGIN_ID); boolean isEnable = Boolean.valueOf(node.get("isEnable", "true")).booleanValue();
node.get()の二つめのパラメータはデフォルト値。
node.flush()で書き込みと、workspace/プロジェクト/.settingsディレクトリに、PLUGIN_IDに.prefs拡張子を付けたファイルが作られる。その内容は、こんな感じ。
#Sun Sep 18 16:06:15 JST 2005 isEnable=true eclipse.preferences.version=1
これで、プラグイン全体ではなくて、プロジェクトごとのプラグイン設定を保存・取得できました。
Kijimunaは上記とは別の方法で保存しているようで、どこにあるのか良くわかりません。workspace/.metadata/.plugins/org.seasar.kijimuna.core/.recorderディレクトリに、プロジェクト名.modelファイルに、Diconツリーがシリアライズされているので、その中に一緒に入っているのかな。こうしておけば、CVSに入れずに済みますね。