Class CheckRoleLogger
java.lang.Object
nablarch.common.authorization.role.CheckRoleLogger
- All Implemented Interfaces:
Initializable
アクションメソッドに設定された
CheckRole
アノテーションの情報をログに出力するロガー。
このクラスは、指定されたパッケージ以下に存在するクラスを走査して、
各メソッドとそこに設定されたCheckRole
アノテーションの情報を抽出する。
そして、抽出した情報をログにデバッグレベルで出力する。
これは、アクションメソッドへのCheckRole
の設定が設計通りになっているかを
確認することを目的とした機能となる。
このクラスは、まずtargetPackage
で指定されたパッケージ配下を再帰的に走査し、
処理対象の候補となるクラスを発見する。
次に、発見したクラスの完全修飾名がtargetClassPattern
で指定された正規表現に
一致するかどうかを確認し、一致する場合は対象のクラスとして処理する。
そして、処理対象となったクラスから、そのクラスで宣言されたpublic
メソッドの情報が抽出される
(親クラスで宣言されたメソッドは対象にならない)。
抽出されたメソッドからは、以下の情報が取り出されてログに出力される。
- クラスの完全修飾名(
Class.getName()
で取得できる値) - シグネチャ(メソッド名と引数の型の並び)
CheckRole
アノテーションのvalue
に設定された値(未設定の場合は空)CheckRole
アノテーションのanyOf
に設定された値(未設定の場合は空)
このクラスはInitializable
を実装しており、アプリケーション起動時の初期化のタイミングで
ログを出力する。
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
初期化処理を行う。void
setTargetClassPattern
(String targetClassPattern) 処理対象となるクラスを特定するための正規表現を設定する。void
setTargetPackage
(String targetPackage) 走査対象となるパッケージの名前を設定する。
-
Constructor Details
-
CheckRoleLogger
public CheckRoleLogger()
-
-
Method Details
-
initialize
public void initialize()Description copied from interface:Initializable
初期化処理を行う。- Specified by:
initialize
in interfaceInitializable
-
setTargetPackage
走査対象となるパッケージの名前を設定する。- Parameters:
targetPackage
- 走査対象となるパッケージの名前
-
setTargetClassPattern
処理対象となるクラスを特定するための正規表現を設定する。この正規表現は、クラスの完全修飾名に対して適用される。
デフォルトは^.*Action$
が設定されている("Action"
で終わるクラスが対象)。- Parameters:
targetClassPattern
- 処理対象となるクラスを特定するための正規表現
-