openGionopenGion
5.7.8.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.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 RLNAME
           
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 getRawLongLabel(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
関連項目:
定数フィールド値

RLNAME

public static final int RLNAME
関連項目:
定数フィールド値

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 - カラム名
data - CLM,CODE,LNAME,SNAME,CODELVL,CODEGRP,CODE_PARAM,ROLES,SYSTEM_ID,KBSAKU,RSNAMEの順番の文字列配列を格納
useFlag - 使用フラグ配列(サブセット化するときの有効/無効を指定)
変更履歴:
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 - カラム名
data - 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) "_" の取り扱いの変更
5.6.8.2 (2103/09/20) rawlongLabel追加
メソッドの詳細

getColumn

public java.lang.String getColumn()
コードデータのキーを返します。

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

getCodeKey

public java.lang.String getCodeKey(int seqNo)
コードデータのキーを返します。

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

getLongLabel

public java.lang.String getLongLabel(int seqNo)
コードデータの表示名を返します。

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

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 - 表示順
戻り値:
使用可能な場合は、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 - 表示順
戻り値:
コードロール

getRoleMode

public RoleMode getRoleMode(int seqNo)
カラムオブジェクトのロールモードを返します。

パラメータ:
seqNo - 表示順
戻り値:
カラムオブジェクトのロールモード
変更履歴:
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 - 検索するキー文字列
戻り値:
コードデータのアドレス(なければ、-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) 新規追加

getRawLongLabel

public java.lang.String getRawLongLabel(int seqNo)
未加工の名前長を返します。

パラメータ:
seqNo - 表示順
戻り値:
コードデータの短縮表示名(spanタグ無し)
変更履歴:
5.6.8.2 (2013/09/13) 新規追加

subsetList

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

パラメータ:
codeCsv - 指定のコードをカンマで連結されたもの
戻り値:
指定のコードに限定された CodeData
変更履歴:
5.1.9.0 (2010/08/01) 新規追加
5.6.8.2 (2013/09/20) rawLongLabel対応

subsetGroup

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

パラメータ:
group - 指定のコードグループのCSV文字列
戻り値:
指定のgroupに所属する限定された CodeData
変更履歴:
5.1.9.0 (2010/08/01) 新規追加
5.6.8.0 (2013/09/20) rawLongLabel対応

subsetRole

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

パラメータ:
userRole - 指定のロール(ユーザーロール)
戻り値:
指定のコードに限定された CodeData
変更履歴:
5.1.9.0 (2010/08/01) 新規追加
5.6.8.2 (2013/09/13) rawLongLabel対応

makeLabelMap

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

戻り値:
コードのマップ
変更履歴:
5.2.1.0 (2010/10/01) 新規追加

toString

public java.lang.String toString()
オブジェクトの識別子として,詳細なコード情報を返します。

オーバーライド:
クラス java.lang.Object 内の toString
戻り値:
詳細なコード情報
変更履歴:
4.1.0.0 (2008/01/18) メソッド修正(改行コード削除)

openGion 5.7.8.0

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