org.opengion.hayabusa.resource
クラス LabelDataLoader
java.lang.Object
org.opengion.hayabusa.resource.LabelDataLoader
final class LabelDataLoader
- extends Object
systemId と lang に対応したラベルデータを作成するデータロードクラスです。
ラベルデータは、項目(CLM)に対して、各種ラベル情報を持っています。
ラベルデータは、名前(ORG)と名前(短)と名前(長)を持っています。従来のラベルは、表示名称と
して、一種類しか持っていませんでした。
名前(ORG)は、従来の表示名称にあたります。これは、一般的なラベルとして
使用されます。名前(短)は、テーブル一覧のヘッダーの様に、特殊なケースで、
簡略化された名称を使用するときに利用されます。この切り替えは、自動で判断されます。
名前(短)に、なにも設定されていない場合は、名前(長)が自動的に使用されますので
初期データ移行時には、そのまま、通常時もテーブルヘッダー時も同じ文字列が
使用されます。
名前(短)と名前(長)は、コメント情報が存在する場合は、Tips表示を行います。
ラベルデータを作成する場合は、同一ラベルで、作成区分(KBSAKU)違いの場合は、
最も大きな作成区分を持つコードを使用します。
作成区分(KBSAKU)='0' のデータは、マスタリソースとして、エンジンとともに
配布されるリソースになります。
読込フラグ(FGLOAD)='1'のラベルリソースは、このLabelDataLoaderオブジェクトが
構築された時に、すべてキャッシュとして内部メモリに読み取ります。
読込フラグが、'1' 以外のデータは、初期起動時には、メモリにキャッシュされず
実際に使用されるまで、オブジェクトが作成されません。
これは、使用されるかどうか判らないラベルデータを、予め作成しないことで、メモリの
節約を図っています。
ただし、リソースのキャッシュに、WeakHashMap クラスを使用しているため、
メモリオーバー時には、クリアされるため、単独での読み取りも行います。
SYSTEM_ID='**' は、共通リソースです。
これは、システム間で共通に使用されるリソース情報を登録しておきます。
- 機能階層
- リソース管理
- 変更履歴:
- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
USE_DB_APPLICATION_INFO
public static final boolean USE_DB_APPLICATION_INFO
- コネクションにアプリケーション情報を追記するかどうか指定
LabelDataLoader
LabelDataLoader(String systemId,
String lang,
boolean initLoad)
- SystemId と lang 毎に ファクトリオブジェクトを作成します。
- パラメータ:
systemId
- システムIDlang
- 言語initLoad
- リソースデータの先読み可否(true:先読みする)- 変更履歴:
3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfo オブジェクトを設定 |
getLabelData
public LabelData getLabelData(String key)
- LabelData オブジェクトを取得します。
作成したLabelDataオブジェクトは,内部にプールしておき,同じリソース要求が
あったときは,プールの LabelDataを返します。
リソースDBに存在しない場合は、NULLラベルを作成します。このオブジェクトも
キャッシュします。
- パラメータ:
key
- ラベルのキー
- 戻り値:
- LabelData オブジェクト
- 変更履歴:
3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfo オブジェクトを設定 |
getLabelMap
public Map<String,LabelData> getLabelMap(String query)
- 指定されたクエリを発行し、ラベルマップを作成します。
ここで作成されたラベル情報は、内部的にキャッシュされません。
各画面で一時的にラベル情報を追加したい場合に使用します。
発行するクエリでは、第1カラムにラベルキーを、第2カラムにラベル名称を設定します。
第3カラムが存在する場合は、名称(短)として使用されます。(必須ではありません)
クエリが指定されていない又は、検索したカラム数が1以下の場合はエラーを返します。
- パラメータ:
query
- ラベルマップを作成するクエリ
- 戻り値:
- labelMap ラベルマップ
- 変更履歴:
4.3.4.0 (2008/12/01) 新規作成 |
clear
public void clear(String key)
- LabelData オブジェクトのキャッシュを個別にクリアします。
リソースデータの更新など、一部分の更新時に、すべてのキャッシュを
破棄するのではなく、指定の分のみ破棄できる機能です。
- パラメータ:
key
- ラベルのキー
clear
public void clear()
- LabelData オブジェクトのキャッシュをクリアします。
Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.