Class UserIdAttribute
java.lang.Object
nablarch.common.handler.threadcontext.UserIdAttribute
- All Implemented Interfaces:
ThreadContextAttribute<Object>
- Direct Known Subclasses:
UserIdAttributeInSessionStore
スレッドコンテキストに保持するユーザID属性。
HTTPセッション上に格納されているログインユーザIDを スレッドコンテキストに格納する。
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetKey()
スレッドコンテキストに格納する際に使用するプロパティのキー名を返す。protected Object
getUserIdSession
(ExecutionContext ctx, String skey) セッションからユーザIDを取得する。 デフォルトではHTTPセッションからユーザIDを取得する。 必要に応じてオーバーライドすること。getValue
(Object req, ExecutionContext ctx) スレッドコンテキストに格納するプロパティの値を返す。void
setAnonymousId
(String anonymousId) 未ログイン時にスレッドコンテキストに設定されるIDを設定する。void
setSessionKey
(String sessionKey) ログインユーザIDが格納されているHTTPセッション上のキー名を設定する。
-
Constructor Details
-
UserIdAttribute
public UserIdAttribute()
-
-
Method Details
-
setSessionKey
ログインユーザIDが格納されているHTTPセッション上のキー名を設定する。デフォルトでは
getKey()
の値を使用する。- Parameters:
sessionKey
- HTTPセッション上のキー名
-
setAnonymousId
未ログイン時にスレッドコンテキストに設定されるIDを設定する。明示的にこの値を設定しなかった場合、 未ログイン時にスレッドコンテキスト上のユーザIDは設定されない。
- Parameters:
anonymousId
- 未ログイン時にスレッドコンテキストに設定されるID
-
getKey
スレッドコンテキストに格納する際に使用するプロパティのキー名を返す。ThreadContext.USER_ID_KEY
を使用する。- Specified by:
getKey
in interfaceThreadContextAttribute<Object>
- Returns:
- プロパティのキー名
-
getValue
スレッドコンテキストに格納するプロパティの値を返す。スレッドコンテキストに格納するユーザIDの値は以下のように決定される。 1. HTTPセッション上のキー
sessionKey
の値を取得する。 その値がnullでなければスレッドコンテキストに設定する。 2. HTTPセッション上の値がnullであり、かつanonymousId
が 設定されていれば、その値をスレッドコンテキストに設定する。 3. 上記以外の場合はnullを設定する。- Specified by:
getValue
in interfaceThreadContextAttribute<Object>
- Parameters:
req
- ハンドラの入力データctx
- 実行コンテキスト情報- Returns:
- プロパティの値
-
getUserIdSession
セッションからユーザIDを取得する。 デフォルトではHTTPセッションからユーザIDを取得する。 必要に応じてオーバーライドすること。- Parameters:
ctx
- 実行コンテキストskey
- ユーザIDのキー- Returns:
- ユーザID
-