openGionopenGion
5.4.3.4

org.opengion.hayabusa.resource
クラス DataRole

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

public final class DataRole
extends java.lang.Object

データロールは、データへのアクセス権限を管理するクラスです。 データロール情報は、データロールマスタ(GEA06)で管理されます。 あるユーザーのデータロール情報に対してひもつくデータロールマスタの カラム、条件値、条件式の一覧に対して、カラム単位に条件式を構築します。 このクラスでは、インスタンス作成時にデータロールマスタのDBを直接検索しています。 このため、データ変更時の変更内容を次回ログイン時から反映させるため、 自身のオブジェクトキャッシュは保持していません。 また、各条件式について、1つのカラムに対して複数の条件式が適用される場合、 条件式が"="または"LIKE"だけの場合は、"OR"結合されます。 "!="及び"NOT LIKE"条件が1つでも含まれる場合は、"AND"結合されます。 データロールがNULLの場合、全データへのアクセス可能となり、条件式としては、 "LIKE '%'" が付加されます。 また、'--'の場合、全データへのアクセスが不可能となり、条件式としては、 "NOT LIKE '%'" が付加されます。 ユーザーのデータロールが指定されているにも関わらず、データロールの検索ができない 場合は、全禁止になります。 検索条件を取得する際に、テーブル名又は、テーブル名の別名が指定された場合、 条件の取得する際には、テーブル名は無視されますが、返される条件には、テーブル名 は付加された状態になります。 例) ABC(=) BCD(=) -> (CLM = 'ABC' or CLM = 'BCD' ) ABC(=) BCD(LIKE) -> (CLM = 'ABC' or CLM like 'BCD%' ) ABC(=) BCD(!=) -> (CLM = 'ABC' and CLM != 'BCD' ) ABC(LIKE) BCD(LIKE) -> (CLM like 'ABC%' or CLM like 'BCD%' ) ABC(LIKE) BCD(!=) -> (CLM like 'ABC%' and CLM != 'BCD' ) ABC(LIKE) BCD(!=) -> (CLM != 'ABC' and CLM != 'BCD' ) ABC(=) BCD(=) -> (A.CLM = 'ABC' or A.CLM = 'BCD' ) ※ {@SEC.A.CLM}でアクセス

変更履歴:
4.4.0.0 (2009/08/02) 新規作成
機能階層
リソース管理
バージョン
4.0
作成者
Hiroki Nakamura
導入されたバージョン:
JDK5.0,

メソッドの概要
 java.lang.String getCondition(java.lang.String clm)
          ロールズを返します。
 java.lang.String getDataRoles()
          ロールズを返します。
static DataRole newInstance(java.lang.String droles, java.lang.String systemId, ApplicationInfo appInfo)
          ロール文字列から、データロールマスタ(GEA05)を検索し、カラム単位の 条件式を生成します。
 java.lang.String toString()
          オブジェクトの識別子として,詳細なユーザー情報を返します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

メソッドの詳細

newInstance

public static DataRole newInstance(java.lang.String droles,
                                   java.lang.String systemId,
                                   ApplicationInfo appInfo)
ロール文字列から、データロールマスタ(GEA05)を検索し、カラム単位の 条件式を生成します。

パラメータ:
droles - String "|"で区切られた データロール文字列
systemId - システムID
appInfo - 接続情報
戻り値:
データロールオブジェクト

getDataRoles

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

戻り値:
ロールズ文字列

getCondition

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

パラメータ:
clm - カラム名
戻り値:
ロールズ文字列
変更履歴:
4.4.0.1 (2009/08/08) テーブルIDが付加されている場合の条件を追加

toString

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

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

openGion 5.4.3.4

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