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

## 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`
  戻り値:
    詳細な画面情報

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

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