パッケージ org.opengion.hayabusa.resource

## クラス ColumnDataLoader

- java.lang.Object
- - org.opengion.hayabusa.resource.ColumnDataLoader

-     final class ColumnDataLoader
      extends Object

  systemId に対応したカラムデータを作成するデータロードクラスです。 カラムデータは、項目(CLM)に対して、各種カラム情報を持っています。 エンジン内部で使用している DBColumn オブジェクトは、RENDERER や EDITOR など 実際にはオブジェクトで管理していますが、この ColumnData では、それらのキーとなる 文字列を持っています。実際に DBColumn オブジェクトの構築時に、各属性オブジェクトを 生成(または、キャッシュから取り出し)ます。 カラムデータを作成する場合は、同一カラムで、作成区分(KBSAKU)違いの場合は、 最も大きな作成区分を持つコードを使用します。 作成区分(KBSAKU)='0' のデータは、マスタリソースとして、エンジンとともに 配布されるリソースになります。 カラムデータには、３つのレベルのオブジェクト作成方法が適用されます。 エンジン内部のカラムリソースファイル(org.opengion.hayabusa.common.data.ColumnResource)は、 初期作成されるカラムリソースです。エンジンの更新に対応して、このリソースも同時に 更新されます。このカラムは、最も優先順位の低いリソースで、同一キー情報で他の形式の カラムがあれば、そちらが使用されます。 読込フラグ(FGLOAD)='1'のカラムリソースは、すべて初期起動時に一括読み込みされます。 読込フラグが、'1' 以外のデータは、初期起動時には、メモリにキャッシュされず 実際に使用されるまで、オブジェクトが作成されません。 これは、使用されるかどうか判らないカラムデータを、予め作成しないことで、メモリの 節約を図っています。 SYSTEM_ID='**' は、共通リソースです。 これは、システム間で共通に使用されるリソース情報を登録しておきます。
  変更履歴:
    4.0.0.0 (2004/12/31) 新規作成
  機能分類
    リソース管理
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールド | 説明
    --- | --- | ---
    `static boolean` | `USE_DB_APPLICATION_INFO` | コネクションにアプリケーション情報を追記するかどうか指定

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `ColumnDataLoader​(String systemId, String baseSys, boolean initLoad)` | SystemId 毎に ファクトリオブジェクトを作成します。

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `void` | `clear()` | ColumnData オブジェクトのキャッシュをクリアします。
    `void` | `clear​(String key)` | ColumnData オブジェクトのキャッシュを個別にクリアします。
    `ColumnData` | `getColumnData​(String key)` | ColumnDataオブジェクトを取得します。

    - ### クラスから継承されたメソッド 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

      コネクションにアプリケーション情報を追記するかどうか指定

  - ### コンストラクタの詳細

    - #### ColumnDataLoader

          ColumnDataLoader​(String systemId,
                           String baseSys,
                           boolean initLoad)

      SystemId 毎に ファクトリオブジェクトを作成します。
      パラメータ:
        `systemId` - システムID
        `baseSys` - ベースとなるSYSTEM_ID
        `initLoad` - リソースデータの先読み可否(true:先読みする)
      変更履歴:
        7.2.9.2 (2020/10/30) ベースとなるSYSTEM_ID(RESOURCE_BASE_SYSTEM_ID)の取得

  - ### メソッドの詳細

    - #### getColumnData

          public ColumnData getColumnData​(String key)

      ColumnDataオブジェクトを取得します。 作成したColumnDataオブジェクトは，内部にプールしておき，同じリソース要求が あったときは，プールの ColumnDataを返します。 読込フラグ(FGLOAD)が '1' のデータは、起動時に先読みします。 それ以外のデータは、ここでキー要求が発生した時点で読み込みます。 読込フラグ(FGLOAD) のマーカー設定モード(USE_FGLOAD_AUTOSET)を使用する(true)場合は、 追加読み込み(先読みされていないカラム)に対して、読込フラグ(FGLOAD)を 2:使用実績 に 設定します。(次回起動時の、初期読み込みは行いません。)
      パラメータ:
        `key` - カラムのキー
      戻り値:
        ColumnDataオブジェクト
      変更履歴:
        3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定, 6.3.1.1 (2015/07/10) 読込フラグ(FGLOAD) のマーカー設定追加。 // * @og.rev 7.0.7.0 (2019/12/13) FG_LOADが、3:使用確認 , 8:未使用 の場合に使用されると、2:使用実績 をセットする。 7.0.7.2 元に戻す, 7.0.7.0 (2019/12/13) キーだけからﾘｿｰｽ無しのColumnDataを作成します。, 7.0.7.2 (2019/12/28) ﾘｿｰｽ無しのｷｬｯｼｭは行わない。(DBからSELECTした際、ｽｷｰﾏから自動で文字か数字を判定しているから), 7.2.6.0 (2020/06/30) "**"以外にベースとなるSYSTEM_ID(RESOURCE_BASE_SYSTEM_ID)設定の対応

    - #### clear

          public void clear​(String key)

      ColumnData オブジェクトのキャッシュを個別にクリアします。 リソースデータの更新など、一部分の更新時に、すべてのキャッシュを 破棄するのではなく、指定の分のみ破棄できる機能です。
      パラメータ:
        `key` - カラムのキー
      変更履歴:
        6.9.0.1 (2018/02/05) どのシステムIDのﾘｿｰｽがクリアされたかを表示します。

    - #### clear

          public void clear()

      ColumnData オブジェクトのキャッシュをクリアします。
      変更履歴:
        6.9.0.1 (2018/02/05) どのシステムIDのﾘｿｰｽがクリアされたかを表示します。