クラス CodeData
- java.lang.Object
-
- org.opengion.hayabusa.resource.CodeData
-
public final class CodeData extends Object
systemId と lang に対応したコードデータを作成します。 コードデータは、項目(CLM)に対して、複数のコード(CODE)を持っています。 この複数のコードを表示順に持つことで、プルダウンメニュー等の表示順を指定します。 コードデータを作成する場合は、同一項目・コードで、作成区分違いの場合は、 最も大きな作成区分を持つコードを使用します。 作成区分(KBSAKU)は、他のリソースと異なり、基本的には使用しません。 これは、通常は項目単位に作成区分を持つべきところを、コード単位でしか 持てないデータベースの設計になっている為です。アプリケーション側で設定条件を きちんと管理すれば、作成区分を使用できますが、一般にはお奨めできません。- 変更履歴:
- 4.0.0.0 (2004/12/31) 新規作成
- 機能分類
- リソース管理
- バージョン
- 4.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
-
-
フィールドの概要
フィールド 修飾子とタイプ フィールド 説明 static intCLMカラム番号 0static intCODEカラム番号 1static intCODE_PARAMカラム番号 6static intCODEGRPカラム番号 5static intCODELVLカラム番号 4(package private) static intDATA_SIZE内部データのカラム数 13static intDESCRIPTカラム番号 12static intKBSAKUカラム番号 9static intLNAMEカラム番号 2static intRLNAMEカラム番号 11static intROLESカラム番号 7static intRSNAMEカラム番号 10static intSNAMEカラム番号 3static intSYSTEM_IDカラム番号 8
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 intgetAddress(String key)マッチするコードデータのアドレスを返します。StringgetCodeKey(int seqNo)コードデータのキーを返します。StringgetCodeLevel(int seqNo)コード階層を返します。StringgetCodeParam(int seqNo)コードパラメータを返します。StringgetColumn()コードデータのキーを返します。StringgetDescription(int seqNo)概要説明 を返します。StringgetLongLabel(int seqNo)コードデータの表示名を返します。StringgetRawLongLabel(int seqNo)未加工の名前長を返します。StringgetRawShortLabel(int seqNo)コードデータの短縮表示名(spanタグ無し)を返します。RoleModegetRoleMode(int seqNo)カラムオブジェクトのロールモードを返します。StringgetRoles(int seqNo)コードロールを取得します。StringgetShortLabel(int seqNo)コードデータの短縮表示名を返します。intgetSize()コードデータの配列数を返します。booleanisUse(int seqNo)このコードが、使用できるかどうかを、返します。CodeDatasubsetGroup(String group)指定のgroupに所属する限定された CodeData を構築して返します。CodeDatasubsetList(String codeCsv)指定のコードに限定された CodeData を構築して返します。CodeDatasubsetRole(RoleMode userRole)指定のコードに限定された CodeData を構築して返します。StringtoCodeString()オブジェクトの識別子として,詳細なコード情報を返します。StringtoString()オブジェクトの識別子として,詳細なコード情報を返します。booleanuseGroup()コードグループを利用するかどうかを返します。booleanuseLevel()コードレベル機能を利用するかどうかを返します。booleanuseParam()パラメータを利用するかどうかを返します。booleanuseRoleMode()ロールモードを、使用しているかどうかを、返します。
-
-
-
フィールドの詳細
-
CLM
public static final int CLM
カラム番号 0- 関連項目:
- 定数フィールド値
-
CODE
public static final int CODE
カラム番号 1- 関連項目:
- 定数フィールド値
-
LNAME
public static final int LNAME
カラム番号 2- 関連項目:
- 定数フィールド値
-
SNAME
public static final int SNAME
カラム番号 3- 関連項目:
- 定数フィールド値
-
CODELVL
public static final int CODELVL
カラム番号 4- 関連項目:
- 定数フィールド値
-
CODEGRP
public static final int CODEGRP
カラム番号 5- 関連項目:
- 定数フィールド値
-
CODE_PARAM
public static final int CODE_PARAM
カラム番号 6- 関連項目:
- 定数フィールド値
-
ROLES
public static final int ROLES
カラム番号 7- 関連項目:
- 定数フィールド値
-
SYSTEM_ID
public static final int SYSTEM_ID
カラム番号 8- 関連項目:
- 定数フィールド値
-
KBSAKU
public static final int KBSAKU
カラム番号 9- 関連項目:
- 定数フィールド値
-
RSNAME
public static final int RSNAME
カラム番号 10- 関連項目:
- 定数フィールド値
-
RLNAME
public static final int RLNAME
カラム番号 11- 関連項目:
- 定数フィールド値
-
DESCRIPT
public static final int DESCRIPT
カラム番号 12- 関連項目:
- 定数フィールド値
-
DATA_SIZE
static final int DATA_SIZE
内部データのカラム数 13- 関連項目:
- 定数フィールド値
-
-
コンストラクタの詳細
-
CodeData
CodeData(String clm, Map<String,String[]> data, boolean[] useFlag)
配列文字列のデータを元に、CodeDataオブジェクトを構築します。 このコンストラクタは、他のパッケージから呼び出せないように、 パッケージプライベートにしておきます。 このコンストラクタは、マスタリソースファイルを想定しています。 引数の並び順は、CLM,CODE,LNAME,SNAME,CODELVL,CODEGRP,CODE_PARAM,ROLES,SYSTEM_ID,KBSAKU,RSNAME,RLNAME,DESCRIPT- パラメータ:
clm- カラム名data- 規定の順番の文字列配列を格納useFlag- 使用フラグ配列(サブセット化するときの有効/無効を指定)- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加, 6.3.6.0 (2015/08/16) System.arraycopy が使える箇所は、置き換えます。
-
CodeData
CodeData(String clm, Map<String,String[]> data)
配列文字列のデータを元に、CodeDataオブジェクトを構築します。 このコンストラクタは、他のパッケージから呼び出せないように、 パッケージプライベートにしておきます。 このコンストラクタは、マスタリソースファイルを想定しています。 引数の並び順は、CLM,CODE,LNAME,SNAME,CODELVL,CODEGRP,CODE_PARAM,ROLES,SYSTEM_ID,KBSAKU,RSNAME,RLNAME,DESCRIPT- パラメータ:
clm- カラム名data- 規定の順番の文字列配列を格納- 変更履歴:
- 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追加, 6.2.0.0 (2015/02/27) description 概要説明 追加, 6.9.5.0 (2018/04/23) USE_MULTI_KEY_SELECT 廃止(IE8以降ブラウザ標準)
-
-
メソッドの詳細
-
getColumn
public String getColumn()
コードデータのキーを返します。- 戻り値:
- コードデータのキー
-
getCodeKey
public String getCodeKey(int seqNo)
コードデータのキーを返します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータのキー
-
getLongLabel
public String getLongLabel(int seqNo)
コードデータの表示名を返します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータの表示名
-
getShortLabel
public String getShortLabel(int seqNo)
コードデータの短縮表示名を返します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータの短縮表示名
-
getCodeLevel
public String getCodeLevel(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 String getCodeParam(int seqNo)
コードパラメータを返します。 コードパラメータは、メニューの各要素(option要素)に設定するタグの内容を追記します。 ここに記述した文字列をそのまま追記します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードパラメータ
-
getRoles
public 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(String key)
マッチするコードデータのアドレスを返します。 一致するデータが存在しない場合は、-1 を返します。- パラメータ:
key- 検索するキー文字列- 戻り値:
- コードデータのアドレス(なければ、-1)
-
getSize
public int getSize()
コードデータの配列数を返します。- 戻り値:
- コードデータの配列数
-
useLevel
public boolean useLevel()
コードレベル機能を利用するかどうかを返します。 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:使用しない です。 このコードグループは、リソースの引数で設定した CSV形式に 対して、値が設定されていたかどうかを返します。 これにより、不要な処理を行う必要がなくなります。- 戻り値:
- パラメータを利用するかどうか(初期値:false:使用しない)
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
toCodeString
public String toCodeString()
オブジェクトの識別子として,詳細なコード情報を返します。 キー:ラベル ・・の繰り返し文字列を返します。- 戻り値:
- 詳細なコード情報
- 変更履歴:
- 4.1.0.0 (2008/01/18) 新規追加
-
getRawShortLabel
public String getRawShortLabel(int seqNo)
コードデータの短縮表示名(spanタグ無し)を返します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータの短縮表示名(spanタグ無し)
- 変更履歴:
- 4.3.8.0 (2009/08/01) 新規追加
-
getRawLongLabel
public String getRawLongLabel(int seqNo)
未加工の名前長を返します。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータの短縮表示名(spanタグ無し)
- 変更履歴:
- 5.6.8.2 (2013/09/13) 新規追加
-
getDescription
public String getDescription(int seqNo)
概要説明 を返します。 この概要説明は、個々の コードに対する説明です。 optionタグに、title属性として使用すれば、説明文になります。- パラメータ:
seqNo- 表示順- 戻り値:
- コードデータの概要説明
- 変更履歴:
- 6.2.0.0 (2015/02/27) description 概要説明 追加
-
subsetList
public CodeData subsetList(String codeCsv)
指定のコードに限定された CodeData を構築して返します。 このサブセットは、コードのCSV文字列に基づいて作成されます。 この CodeData は、本当のサブセットではなく、プルダウンメニューなどの選択肢のリストを 制限します。これは、一覧表示(レンデラー)では、すべての既存の設定値を表示しておく 必要があるからです。そして、変更時(エディター)に、選択肢を制限します。 引数の codeCsv が、null,ゼロ文字列の場合は、自分自身を返します。(同一です)- パラメータ:
codeCsv- 指定のコードをカンマで連結されたもの- 戻り値:
- 指定のコードに限定された CodeData
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加, 5.6.8.2 (2013/09/20) rawLongLabel対応, 6.2.0.0 (2015/02/27) description 概要説明 追加
- このメソッドは、nullを返しません
-
subsetGroup
public CodeData subsetGroup(String group)
指定のgroupに所属する限定された CodeData を構築して返します。 このサブセットは、コードグループのCSV文字列に指定に基づいて作成されます。 この CodeData は、本当のサブセットではなく、プルダウンメニューなどの選択肢のリストを 制限します。これは、一覧表示(レンデラー)では、すべての既存の設定値を表示しておく 必要があるからです。そして、変更時(エディター)に、選択肢を制限します。 引数の group が、null,ゼロ文字列、または、内部でグループを使用していない場合は、 自分自身を返します。(同一です) 引数の group も、内部設定のグループも、CSV形式CSV で複数のグループを指定できます。 この場合は、各グループのうち、どれか一つでも該当すれば、使用(true)になります。- パラメータ:
group- 指定のコードグループのCSV文字列- 戻り値:
- 指定のgroupに所属する限定された CodeData
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加, 5.6.8.0 (2013/09/20) rawLongLabel対応, 6.2.0.0 (2015/02/27) description 概要説明 追加
- このメソッドは、nullを返しません
-
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対応, 6.2.0.0 (2015/02/27) description 概要説明 追加
- このメソッドは、nullを返しません
-
-