概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.4.4.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.hayabusa.resource
クラス CodeData

    java.lang.Object
      org.opengion.hayabusa.resource.CodeData

    public final class CodeData

extends java.lang.Object

systemId と lang に対応したコードデータを作成します。 コードデータは、項目(CLM)に対して、複数のコード(CODE)を持っています。 この複数のコードを表示順に持つことで、プルダウンメニュー等の表示順を指定します。 コードデータを作成する場合は、同一項目・コードで、作成区分違いの場合は、 最も大きな作成区分を持つコードを使用します。 作成区分(KBSAKU)は、他のリソースと異なり、基本的には使用しません。 これは、通常は項目単位に作成区分を持つべきところを、コード単位でしか 持てないデータベースの設計になっている為です。アプリケーション側で設定条件を きちんと管理すれば、作成区分を使用できますが、一般にはお奨めできません。

変更履歴:

  4.0.0 (2004/12/31) 新規作成

機能階層
  リソース管理
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

フィールドの概要
`static int` | `CLM` 内部データのカラム番号 0
`static int` | `CODE`
`static int` | `CODE_PARAM`
`static int` | `CODEGRP`
`static int` | `CODELVL`
`static int` | `KBSAKU`
`static int` | `LNAME`
`static int` | `MAX_LENGTH`
`static int` | `ROLES`
`static int` | `RSNAME`
`static int` | `SNAME`
`static int` | `SYSTEM_ID`

コンストラクタの概要
`CodeData(java.lang.String clm, java.util.Map<java.lang.String,java.lang.String[]> data)` 配列文字列のデータを元に、CodeDataオブジェクトを構築します。
`CodeData(java.lang.String clm, java.util.Map<java.lang.String,java.lang.String[]> data, boolean[] useFlag)` 配列文字列のデータを元に、CodeDataオブジェクトを構築します。

メソッドの概要
`int` | `getAddress(java.lang.String key)` マッチするコードデータのアドレスを返します。
`java.lang.String` | `getCodeKey(int seqNo)` コードデータのキーを返します。
`java.lang.String` | `getCodeLebel(int seqNo)` コード階層を返します。
`java.lang.String` | `getCodeParam(int seqNo)` コードパラメータを返します。
`java.lang.String` | `getColumn()` コードデータのキーを返します。
`java.lang.String` | `getLongLabel(int seqNo)` コードデータの表示名を返します。
`java.lang.String` | `getRawShortLabel(int seqNo)` コードデータの短縮表示名(spanタグ無し)を返します。
`RoleMode` | `getRoleMode(int seqNo)` カラムオブジェクトのロールモードを返します。
`java.lang.String` | `getRoles(int seqNo)` コードロールを取得します。
`java.lang.String` | `getShortLabel(int seqNo)` コードデータの短縮表示名を返します。
`int` | `getSize()` コードデータの配列数を返します。
`boolean` | `isUse(int seqNo)` このコードが、使用できるかどうかを、返します。
`java.util.Map<java.lang.String,java.lang.String>` | `makeLabelMap()` longLabel をキーとした、コードのマップを構築して返します。
`CodeData` | `subsetGroup(java.lang.String group)` 指定のgroupに所属する限定された CodeData を構築して返します。
`CodeData` | `subsetList(java.lang.String codeCsv)` 指定のコードに限定された CodeData を構築して返します。
`CodeData` | `subsetRole(RoleMode userRole)` 指定のコードに限定された CodeData を構築して返します。
`java.lang.String` | `toCodeString()` オブジェクトの識別子として，詳細なコード情報を返します。
`java.lang.String` | `toString()` オブジェクトの識別子として，詳細なコード情報を返します。
`boolean` | `useGroup()` コードグループを利用するかどうかを返します。
`boolean` | `useLebel()` コードレベル機能を利用するかどうかを返します。
`boolean` | `useMultiSelect()` マルチ・キーセレクトを使用するかどうかを返します。
`boolean` | `useParam()` パラメータを利用するかどうかを返します。
`boolean` | `useRoleMode()` ロールモードを、使用しているかどうかを、返します。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

フィールドの詳細

### CLM

    public static final int CLM

  内部データのカラム番号 0

  関連項目:
    定数フィールド値

### CODE

    public static final int CODE

関連項目:
  定数フィールド値

### LNAME

    public static final int LNAME

関連項目:
  定数フィールド値

### SNAME

    public static final int SNAME

関連項目:
  定数フィールド値

### CODELVL

    public static final int CODELVL

関連項目:
  定数フィールド値

### CODEGRP

    public static final int CODEGRP

関連項目:
  定数フィールド値

### CODE_PARAM

    public static final int CODE_PARAM

関連項目:
  定数フィールド値

### ROLES

    public static final int ROLES

関連項目:
  定数フィールド値

### SYSTEM_ID

    public static final int SYSTEM_ID

関連項目:
  定数フィールド値

### KBSAKU

    public static final int KBSAKU

関連項目:
  定数フィールド値

### RSNAME

    public static final int RSNAME

関連項目:
  定数フィールド値

### MAX_LENGTH

    public static final int MAX_LENGTH

関連項目:
  定数フィールド値

コンストラクタの詳細

### CodeData

    CodeData(java.lang.String clm,
             java.util.Map<java.lang.String,java.lang.String[]> data,
             boolean[] useFlag)

  配列文字列のデータを元に、CodeDataオブジェクトを構築します。 このコンストラクタは、他のパッケージから呼び出せないように、 パッケージプライベートにしておきます。 このコンストラクタは、マスタリソースファイルを想定しています。

  パラメータ:
    `clm` - String CLM
    `data` - Map CLM,CODE,LNAME,SNAME,CODELVL,CODEGRP,CODE_PARAM,ROLES,SYSTEM_ID,KBSAKU,RSNAME の順番の文字列配列を格納
    `useFlag` - boolean[]
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### CodeData

    CodeData(java.lang.String clm,
             java.util.Map<java.lang.String,java.lang.String[]> data)

  配列文字列のデータを元に、CodeDataオブジェクトを構築します。 このコンストラクタは、他のパッケージから呼び出せないように、 パッケージプライベートにしておきます。 このコンストラクタは、マスタリソースファイルを想定しています。

  パラメータ:
    `clm` - String CLM
    `data` - Map CLM,CODE,LNAME,SNAME,CODELVL,CODEGRP,CODE_PARAM,ROLES,SYSTEM_ID,KBSAKU,RSNAME の順番の文字列配列を格納
  変更履歴:

    4.3.0.0 (2008/07/04) ロールモードマルチ対応
    4.3.8.0 (2009/08/01) rawShortLabel追加
    4.3.8.0 (2009/08/01) グループ機能とパラメータの判定、isUseFlag フラグの追加
    5.2.2.0 (2010/11/01) "_" の取り扱いの変更

メソッドの詳細

### getColumn

    public java.lang.String getColumn()

  コードデータのキーを返します。

  戻り値:
    コードデータのキー

### getCodeKey

    public java.lang.String getCodeKey(int seqNo)

  コードデータのキーを返します。

  パラメータ:
    `seqNo` - int 表示順
  戻り値:
    コードデータのキー

### getLongLabel

    public java.lang.String getLongLabel(int seqNo)

  コードデータの表示名を返します。

  パラメータ:
    `seqNo` - int 表示順
  戻り値:
    コードデータの表示名

### getShortLabel

    public java.lang.String getShortLabel(int seqNo)

  コードデータの短縮表示名を返します。

  パラメータ:
    `seqNo` - 表示順
  戻り値:
    コードデータの短縮表示名

### getCodeLebel

    public java.lang.String getCodeLebel(int seqNo)

  コード階層を返します。 通常のメニューは、階層が "1" になります。optgroup要素として使用する場合は、 階層を "0" で登録します。

  パラメータ:
    `seqNo` - 表示順
  戻り値:
    コード階層( "1":option要素、"0":optgroup要素 )

### isUse

    public boolean isUse(int seqNo)

  このコードが、使用できるかどうかを、返します。 コードグループや、コードリストなどで、サブセットを作成する場合、 プルダウンなどの選択肢は、制限しますが、レンデラーのラベルは、制限しません。 これは、既存データを表示させる必要がある為です。 このフラグは、選択肢を作成するときに利用します。 標準状態で作成した場合は、すべての項目が、true になっています。

  パラメータ:
    `seqNo` - int 表示順
  戻り値:
    使用可能な場合は、true
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### getCodeParam

    public java.lang.String getCodeParam(int seqNo)

  コードパラメータを返します。 コードパラメータは、メニューの各要素(option要素)に設定するタグの内容を追記します。 ここに記述した文字列をそのまま追記します。

  パラメータ:
    `seqNo` - 表示順
  戻り値:
    コードパラメータ

### getRoles

    public java.lang.String getRoles(int seqNo)

  コードロールを取得します。

  パラメータ:
    `seqNo` - int 表示順
  戻り値:
    コードロール

### getRoleMode

    public RoleMode getRoleMode(int seqNo)

  カラムオブジェクトのロールモードを返します。

  パラメータ:
    `seqNo` - int 表示順
  戻り値:
    カラムオブジェクトのロールモード
  変更履歴:

    4.3.0.0 (2008/07/04) ロールモードマルチ対応

### useRoleMode

    public boolean useRoleMode()

  ロールモードを、使用しているかどうかを、返します。 ロールモードを使用している場合は、ロール制御の処理が必要です。 使用している/いないを事前に判断することで、無駄な処理を削減できます。

  戻り値:
    ロールモードを使用している場合は、true
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### getAddress

    public int getAddress(java.lang.String key)

  マッチするコードデータのアドレスを返します。 一致するデータが存在しない場合は、-1 を返します。

  パラメータ:
    `key` - String 検索するキー文字列
  戻り値:
    コードデータのアドレス(なければ、-1）

### getSize

    public int getSize()

  コードデータの配列数を返します。

  戻り値:
    コードデータの配列数

### useMultiSelect

    public boolean useMultiSelect()

  マルチ・キーセレクトを使用するかどうかを返します。 true：使用する。false:使用しない です。 使用するにした場合でも、ラベルの先頭文字が重複しない場合は、 IEの自動選択機能によりセレクト可能なため、JavaScript は出力しません。

  戻り値:
    選択リストで、マルチ・キーセレクトを使用するかどうか(true:使用する）

### useLebel

    public boolean useLebel()

  コードレベル機能を利用するかどうかを返します。 true：使用する。false:使用しない です。 コードレベル機能を利用する場合は、optgroup タグを出力します。 設定としては、レベル 0 に指定のカラムを optgroup として出力します。

  戻り値:
    コードレベル機能を利用するかどうか(初期値：false:使用しない）
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### useParam

    public boolean useParam()

  パラメータを利用するかどうかを返します。 true：使用する。false:使用しない です。 このパラメータは、class 属性として設定される値です。 これを使用して、各種レイアウトなどの指定が可能です。

  戻り値:
    パラメータを利用するかどうか(初期値：false:使用しない）
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### useGroup

    public boolean useGroup()

  コードグループを利用するかどうかを返します。 true：使用する。false:使用しない です。 このコードグループは、リソースの引数で設定した カンマ区切り文字列に 対して、値が設定されていたかどうかを返します。 これにより、不要な処理を行う必要がなくなります。

  戻り値:
    パラメータを利用するかどうか(初期値：false:使用しない）
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### toCodeString

    public java.lang.String toCodeString()

  オブジェクトの識別子として，詳細なコード情報を返します。 キー：ラベル　・・の繰り返し文字列を返します。

  戻り値:
    詳細なコード情報
  変更履歴:

    4.1.0.0 (2008/01/18) 新規追加

### getRawShortLabel

    public java.lang.String getRawShortLabel(int seqNo)

  コードデータの短縮表示名(spanタグ無し)を返します。

  パラメータ:
    `seqNo` - 表示順
  戻り値:
    コードデータの短縮表示名(spanタグ無し)
  変更履歴:

    4.3.8.0 (2009/08/01) 新規追加

### subsetList

    public CodeData subsetList(java.lang.String codeCsv)

  指定のコードに限定された CodeData を構築して返します。 このサブセットは、コードのCSV文字列に基づいて作成されます。 この CodeData は、本当のサブセットではなく、プルダウンメニューなどの選択肢のリストを 制限します。これは、一覧表示（レンデラー）では、すべての既存の設定値を表示しておく 必要があるからです。そして、変更時（エディター）に、選択肢を制限します。 引数の codeCsv が、null,ゼロ文字列の場合は、自分自身を返します。（同一です）

  パラメータ:
    `codeCsv` - String 指定のコードをカンマで連結されたもの
  戻り値:
    指定のコードに限定された CodeData
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### subsetGroup

    public CodeData subsetGroup(java.lang.String group)

  指定のgroupに所属する限定された CodeData を構築して返します。 このサブセットは、コードグループのCSV文字列に指定に基づいて作成されます。 この CodeData は、本当のサブセットではなく、プルダウンメニューなどの選択肢のリストを 制限します。これは、一覧表示（レンデラー）では、すべての既存の設定値を表示しておく 必要があるからです。そして、変更時（エディター）に、選択肢を制限します。 引数の group が、null,ゼロ文字列、または、内部でグループを使用していない場合は、 自分自身を返します。（同一です） 引数の group も、内部設定のグループも、カンマ区切りCSV で複数のグループを指定できます。 この場合は、各グループのうち、どれか一つでも該当すれば、使用(true)になります。

  パラメータ:
    `group` - String 指定のコードグループのCSV文字列
  戻り値:
    指定のgroupに所属する限定された CodeData
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### subsetRole

    public CodeData subsetRole(RoleMode userRole)

  指定のコードに限定された CodeData を構築して返します。 このサブセットは、ロールの指定に基づいて作成されます。 この CodeData は、本当のサブセットではなく、プルダウンメニューなどの選択肢のリストを 制限します。これは、一覧表示（レンデラー）では、すべての既存の設定値を表示しておく 必要があるからです。そして、変更時（エディター）に、選択肢を制限します。 引数の role が、null または、内部でロールを使用していない場合は、自分自身を返します。（同一です）

  パラメータ:
    `userRole` - RoleMode 指定のロール(ユーザーロール)
  戻り値:
    指定のコードに限定された CodeData
  変更履歴:

    5.1.9.0 (2010/08/01) 新規追加

### makeLabelMap

    public java.util.Map<java.lang.String,java.lang.String> makeLabelMap()

  longLabel をキーとした、コードのマップを構築して返します。 これは、ラベルからコード値を見つけるのに使用します。 ラベルからコード値の逆引きは、同一ラベルが存在する場合がありうるので 参考情報としてしか、利用できません。 また、ラベルも、短ラベルにたいするコードのマップを作成したい場合もありますが、 現時点では、対応していません。 （マップに、短ラベル情報も登録すれば、対応可能ですが、ラベルが重複する割合が増えます。） 主な想定用途は、Rendere で出力したファイルを取り込むときに、ラベルからコードを 探す場合です。

  戻り値:
    Map
  変更履歴:

    5.2.1.0 (2010/10/01) 新規追加

### toString

    public java.lang.String toString()

  オブジェクトの識別子として，詳細なコード情報を返します。

  オーバーライド:
    クラス `java.lang.Object` 内の `toString`
  戻り値:
    詳細なコード情報
  変更履歴:

    4.1.0.0 (2008/01/18) メソッド修正(改行コード削除)

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.4.4.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.