openGionopenGion
5.5.0.0

org.opengion.hayabusa.resource
クラス RoleMode

java.lang.Object
  上位を拡張 org.opengion.hayabusa.resource.RoleMode

public final class RoleMode
extends java.lang.Object

ロールモードは、画面オブジェクトやカラムオブジェクトのロール-モード制御の情報を 管理するクラスです。 ROLES 情報は、AAA|BBB|CCC と 『|』で区切られた複数のロールを持っています。 通常、ユーザーロールは画面やカラムの各オブジェクトに対してロール制御可能です。 ログインユーザーは、自分自身のロールを、画面やカラムが持っているかを判定します。 画面に関しては、従来のデフォルトアクセスがなくなり、ロールを登録する場合は、 必ず ユーザーロールとの比較が行われます。画面ロールを登録しない場合は、アクセス 可能と判断されます。つまり、画面の場合は、なにも設定しなければ、アクセス可能と 判断されます。 カラムロールも同様に、何も設定しなければフルアクセスできます。通常、ほとんどの ケースでカラムロールが使われることはありません。 RWMODE 情報は、各ロールに対して、3つの項目で表しています。 1:"-" メニュー非表示 "m" メニュー表示 "p" メニュー表示(強制プルダウン表示) 2:"-" アクセス拒否 "r" 読取許可 "w" 読取、書込許可 3:"-" 未対応 "d" ファイル出力 "u" ファイル入力 "f" ファイル入出力 "e" 画面編集可 互換性の関係より、"" は、"f" "e" と同等とします。 この3項目を順次つないで、"--","-r","-w","mr","mw" などの設定を行います。 モードが設定されている場合は、共通モードとして、すべてのロールに同じモードを 割り当てます。個別に割り当てる場合は、ROLES 情報の後ろに () 付きで追記します。 例えば、AAA|BBB(-r)|CCC とすれば、BBB ロールの場合は、読取専用になります。 ロールをぶつける場合は、AND 演算になります。 過去(Ver3)のモードとの互換性をとる場合、"rw" は "mw" へ、"r-" は"mr" へ変換 してください。

変更履歴:
4.0.0 (2004/01/31) 新規作成
4.3.3.0 (2008/10/01) pモード追加
機能階層
リソース管理
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
static byte D_MODE
          MODE 定義 ( --d )
static java.lang.String DEFAULT_MODE
           
static byte E_MODE
          MODE 定義 ( --f )
static byte F_MODE
          MODE 定義 ( --f )
static byte FULL_MODE
          MODE 定義 ( mwf )
static byte M_MODE
          MODE 定義 ( m-- )
static byte P_MODE
          MODE 定義 ( p-- )
static byte R_MODE
          MODE 定義 ( -r- )
static byte U_MODE
          MODE 定義 ( --u )
static byte W_MODE
          MODE 定義 ( -w- )
 
メソッドの概要
 byte getAccessBitMode(RoleMode other)
          指定のユーザーロールに対する最終的なアクセス条件を取得します。
 java.lang.String getMode()
          モード配列を返します。
 java.lang.String getRoles()
          ロールズを返します。
static boolean isAccess(byte bitMode)
          ビットロールのメニュアクセス可否を返します。
static boolean isDownload(byte bitMode)
          ビットロールのファイルアクセス可否を返します。
static boolean isEdit(byte bitMode)
          ビットロールの画面編集可否を返します。
static boolean isMenu(byte bitMode)
          ビットロールのメニュアクセス可否を返します。
static boolean isPulldown(byte bitMode)
          ビットロールのプルダウン化を返します。
static boolean isRead(byte bitMode)
          ビットロールの読込アクセス可否を返します。
static boolean isUpload(byte bitMode)
          ビットロールのファイルアクセス可否を返します。
static boolean isWrite(byte bitMode)
          ビットロールの書込アクセス可否を返します。
static RoleMode newInstance(java.lang.String roles)
          ロールとモードを元に、RoleModeオブジェクトを構築します。
static RoleMode newInstance(java.lang.String roles, java.lang.String mode)
          ロールとモードを元に、RoleModeオブジェクトを構築します。
 java.lang.String toString()
          オブジェクトの識別子として,詳細なユーザー情報を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

FULL_MODE

public static final byte FULL_MODE
MODE 定義 ( mwf )

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

M_MODE

public static final byte M_MODE
MODE 定義 ( m-- )

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

P_MODE

public static final byte P_MODE
MODE 定義 ( p-- )

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

R_MODE

public static final byte R_MODE
MODE 定義 ( -r- )

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

W_MODE

public static final byte W_MODE
MODE 定義 ( -w- )

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

D_MODE

public static final byte D_MODE
MODE 定義 ( --d )

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

U_MODE

public static final byte U_MODE
MODE 定義 ( --u )

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

F_MODE

public static final byte F_MODE
MODE 定義 ( --f )

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

E_MODE

public static final byte E_MODE
MODE 定義 ( --f )

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

DEFAULT_MODE

public static final java.lang.String DEFAULT_MODE
関連項目:
定数フィールド値
メソッドの詳細

newInstance

public static RoleMode newInstance(java.lang.String roles)
ロールとモードを元に、RoleModeオブジェクトを構築します。 条件が同じ RoleModeオブジェクト があれば、キャッシュから返します。 キャッシュになければ、新規に作成します。 このキャッシュは、完全な内部キャッシュなので、いつクリアされるか保障がありません。

パラメータ:
roles - String "|"で区切られた ロール文字列
戻り値:
RoleMode RoleModeオブジェクト
変更履歴:
4.3.0.0 (2008/07/04) ロールモードマルチ対応

newInstance

public static RoleMode newInstance(java.lang.String roles,
                                   java.lang.String mode)
ロールとモードを元に、RoleModeオブジェクトを構築します。 条件が同じ RoleModeオブジェクト があれば、キャッシュから返します。 キャッシュになければ、新規に作成します。 このキャッシュは、完全な内部キャッシュなので、いつクリアされるか保障がありません。

パラメータ:
roles - String "|"で区切られた ロール文字列
mode - String "|"で区切られ、ロール文字列と対応付けられたモード文字列。唯一の場合は共通モードになる。
戻り値:
RoleMode RoleModeオブジェクト
変更履歴:
4.3.0.0 (2008/07/04) ロールモードマルチ対応

getRoles

public java.lang.String getRoles()
ロールズを返します。

戻り値:
ロールズ文字列

getMode

public java.lang.String getMode()
モード配列を返します。

戻り値:
モード配列

getAccessBitMode

public byte getAccessBitMode(RoleMode other)
指定のユーザーロールに対する最終的なアクセス条件を取得します。 アクセス条件は、複数あるユーザーロールの中で、最大のアクセス条件を算出します。 例えば、AAA(-r)|BBB(-w)|CCC(mr) の3つのロール/モードが設定されている場合、 ユーザーが、AAA だけの場合は、-r ですが、AAA|BBB を持っている場合は、-w になります。 さらに、BBB|CCC と持っている場合は、(-w:書き込み許可)と(mr:メニューから読取許可)の 権限により、mw:メニューからの書き込み許可が与えられます。 モード指定がある場合は、AND演算になります。 例えば、AAA(-r)|BBB(-w)|CCC(mr) と BBB|CCC(-r) の場合、(-r)+(-w)+(mr)*(-r)=-w に なります。ロールは、OR ですが、モードは、同一ロールでのAND になります。 実際には、メニュー表示の可否は、ポップアップ系によく用いられますので、上記のような 許可が実際にあるかどうかは不明ですが、すべてのモードのOR条件での結合になります。

パラメータ:
other - RoleMode ロールモード
戻り値:
アクセスビット
変更履歴:
4.3.0.0 (2008/07/04) ロールモードマルチ対応

isMenu

public static boolean isMenu(byte bitMode)
ビットロールのメニュアクセス可否を返します。 M_MODE = (byte)0x10; // m-- = 10000 = 0x10

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isPulldown

public static boolean isPulldown(byte bitMode)
ビットロールのプルダウン化を返します。 P_MODE = (byte)0x10; // p-- = 010000 = 0x10

パラメータ:
bitMode - byte ビットロール
戻り値:
true:プルダウン化
変更履歴:
4.3.3.0 (2008/10/01) メソッド追加

isRead

public static boolean isRead(byte bitMode)
ビットロールの読込アクセス可否を返します。 R_MODE = (byte)0x04; // -r- = 00100 = 0x04

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isWrite

public static boolean isWrite(byte bitMode)
ビットロールの書込アクセス可否を返します。 これは、読込、書込みの判断ではなく、書込みができるか どうかの判断をしています。 読込、書込みの判断は、isAccess を使用してください。

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isAccess

public static boolean isAccess(byte bitMode)
ビットロールのメニュアクセス可否を返します。 これは、読込、書込みの判断です。 W_MODE = (byte)0x0C; // -w- = 01100 = 0x0C

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isDownload

public static boolean isDownload(byte bitMode)
ビットロールのファイルアクセス可否を返します。 D_MODE = (byte)0x01; // --d = 00001 = 0x01

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isUpload

public static boolean isUpload(byte bitMode)
ビットロールのファイルアクセス可否を返します。 U_MODE = (byte)0x02; // --u = 00010 = 0x02

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)

isEdit

public static boolean isEdit(byte bitMode)
ビットロールの画面編集可否を返します。 E_MODE = (byte)0x07; // --e = 0000111 = 0x07

パラメータ:
bitMode - byte ビットロール
戻り値:
アクセスできる(true)/出来ない(false)
変更履歴:
5.4.2.0 (2011/12/01) 新規作成

toString

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

オーバーライド:
クラス java.lang.Object 内の toString
戻り値:
詳細な画面情報

openGion 5.5.0.0

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