クラス SessionRegistryImpl
- java.lang.Object
-
- org.springframework.security.core.session.SessionRegistryImpl
- 実装されたすべてのインターフェース:
java.util.EventListener
、org.springframework.context.ApplicationListener<AbstractSessionEvent>
、SessionRegistry
public class SessionRegistryImpl extends java.lang.Object implements SessionRegistry, org.springframework.context.ApplicationListener<AbstractSessionEvent>
Spring アプリケーションコンテキストで公開されたSessionDestroyedEvent
をリッスンするSessionRegistry
のデフォルト実装。このクラスが Web アプリケーションで正常に機能するためには、web.xml ファイルに HttpSessionEventPublisher を登録して、このクラスに期限切れのセッションが通知されるようにすることが重要です。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 protected org.apache.commons.logging.Log
logger
コンストラクターのサマリー
コンストラクター コンストラクター 説明 SessionRegistryImpl()
SessionRegistryImpl(java.util.concurrent.ConcurrentMap<java.lang.Object,java.util.Set<java.lang.String>> principals, java.util.Map<java.lang.String,SessionInformation> sessionIds)
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 java.util.List<java.lang.Object>
getAllPrincipals()
SessionRegistry
のすべての既知のプリンシパルを取得します。java.util.List<SessionInformation>
getAllSessions(java.lang.Object principal, boolean includeExpiredSessions)
指定されたプリンシパルのすべての既知のセッションを取得します。SessionInformation
getSessionInformation(java.lang.String sessionId)
指定されたsessionId
のセッション情報を取得します。void
onApplicationEvent(AbstractSessionEvent event)
void
refreshLastRequest(java.lang.String sessionId)
指定されたsessionId
を更新して、最後のリクエスト時間が現在の日時に等しくなるようにします。void
registerNewSession(java.lang.String sessionId, java.lang.Object principal)
指定されたプリンシパルの新しいセッションを登録します。void
removeSessionInformation(java.lang.String sessionId)
指定されたsessionId
に対して維持されているすべてのセッション情報を削除します。
コンストラクターの詳細
SessionRegistryImpl
public SessionRegistryImpl()
SessionRegistryImpl
public SessionRegistryImpl(java.util.concurrent.ConcurrentMap<java.lang.Object,java.util.Set<java.lang.String>> principals, java.util.Map<java.lang.String,SessionInformation> sessionIds)
メソッドの詳細
getAllPrincipals
public java.util.List<java.lang.Object> getAllPrincipals()
インターフェースからコピーされた説明:SessionRegistry
SessionRegistry
のすべての既知のプリンシパルを取得します。- 次で指定:
- インターフェース
SessionRegistry
のgetAllPrincipals
- 戻り値:
- 一意のプリンシパルのそれぞれは、
SessionRegistry.getAllSessions(Object, boolean)
に提示できます。
getAllSessions
public java.util.List<SessionInformation> getAllSessions(java.lang.Object principal, boolean includeExpiredSessions)
インターフェースからコピーされた説明:SessionRegistry
指定されたプリンシパルのすべての既知のセッションを取得します。破棄されたセッションは返されません。渡された引数に応じて、期限切れのセッションが返される場合があります。- 次で指定:
- インターフェース
SessionRegistry
のgetAllSessions
- パラメーター:
principal
- セッションを見つける (null
であってはなりません)includeExpiredSessions
-true
の場合、返されるセッションには、プリンシパルの有効期限が切れたセッションも含まれます- 戻り値:
- このプリンシパルの一致するセッション(null を返さないでください)。
getSessionInformation
public SessionInformation getSessionInformation(java.lang.String sessionId)
インターフェースからコピーされた説明:SessionRegistry
指定されたsessionId
のセッション情報を取得します。期限切れのセッションも返されます(破棄されたセッションは返されません)。- 次で指定:
- インターフェース
SessionRegistry
のgetSessionInformation
- パラメーター:
sessionId
- 見上げる (null
であってはなりません)- 戻り値:
- セッション情報、または
null
が見つからない場合
onApplicationEvent
public void onApplicationEvent(AbstractSessionEvent event)
- 次で指定:
- インターフェース
org.springframework.context.ApplicationListener<AbstractSessionEvent>
のonApplicationEvent
refreshLastRequest
public void refreshLastRequest(java.lang.String sessionId)
インターフェースからコピーされた説明:SessionRegistry
指定されたsessionId
を更新して、最後のリクエスト時間が現在の日時に等しくなるようにします。指定されたsessionId
が見つからないか、セッションが期限切れとしてマークされている場合、サイレントに戻ります。- 次で指定:
- インターフェース
SessionRegistry
のrefreshLastRequest
- パラメーター:
sessionId
- 最後のリクエストの日付と時刻を更新する対象 (null
であってはなりません)
registerNewSession
public void registerNewSession(java.lang.String sessionId, java.lang.Object principal)
インターフェースからコピーされた説明:SessionRegistry
指定されたプリンシパルの新しいセッションを登録します。新しく登録されたセッションは、期限切れとしてマークされません。- 次で指定:
- インターフェース
SessionRegistry
のregisterNewSession
- パラメーター:
sessionId
- プリンシパルと関連付ける (null
であってはなりません)principal
- セッションに関連付ける (null
であってはなりません)
removeSessionInformation
public void removeSessionInformation(java.lang.String sessionId)
インターフェースからコピーされた説明:SessionRegistry
指定されたsessionId
に対して維持されているすべてのセッション情報を削除します。sessionId
が見つからない場合、メソッドは正常に戻ります。- 次で指定:
- インターフェース
SessionRegistry
のremoveSessionInformation
- パラメーター:
sessionId
- 情報を削除する (null
であってはなりません)