Package org.iplass.mtp.prefs
package org.iplass.mtp.prefs
-
ClassDescriptionテナント単位に定義可能な汎用の設定を表す。 name、valueのペアを持つ。 また、この設定を元に実行時に初期化、インスタンス化されるruntimeClassを定義することが可能。 runtimeClassは、この設定の読み込み時に1度だけ初期化され、テナントが有効の間、同一のインスタンスが保持される。 ただし、テナント起動中に、Preferenceの変更・再読み込みが発生した場合は、以前のruntimeClassのインスタンスが破棄(GC対象に)され、 新たなインスタンスが生成され初期化される。
runtimeClassはデフォルトコンストラクタを持つ、POJOもしくはPreferenceAwareを実装したクラス。
POJOの場合は、次の形でPreferenceの値が設定される。 Preference:POJOのname,valueプロパティに値をセット。その名前のプロパティがない場合は、セットしない。 PreferenceSet:上記に加えて、subSetで指定されている各Preferenceのnameをプロパティ名としてvalueを値としてセット。 PreferenceAware実装クラスの場合は、初期化時にinitializeメソッドが呼び出される。 runtimeClassにはutilityClassとして作成されたGroovyクラスの指定も可能。 utilityClassの場合は、そのクラスはGroovyコード内では可視であるが、javaで実装されたクラスからはGroovyObjectとしてのみ参照可能。Preferenceの実行時インスタンスにおいて、 初期化時のイベント通知を受けたい場合 このインタフェースを実装する。PreferenceのManager。 Preferenceの取得、保存を行うことが可能。複数のPreferenceを保持するPreference。 複数の設定値をまとめて管理したい場合に利用する。