wisdom.core.runtime
クラス SessionRequestHandler

java.lang.Object
  拡張wisdom.core.CoreObject
      拡張wisdom.core.runtime.RequestHandler
          拡張wisdom.core.runtime.SessionRequestHandler
すべての実装インタフェース:
IHandler, IRequestHandler

public final class SessionRequestHandler
extends RequestHandler

RequestHandlerを継承して、Sessionオブジェクトへの操作に対応したクラス。
このクラスではコンストラクタ実行時にHttpSessionからUserSession.SESSION_NAMEのキーを使用して
UserSessionオブジェクトを取得します。このときにHttpSessionがnull、もしくはUserSessionがnullの場合には
SessionTimedOutExceptionを送出します。
SSHRHandlerはSessionStateHandleRequestHandlerの略です。
WA0030対応 2004/11/09

バージョン:
0.90, 1/1/2001
作成者:
Takao Kouda

コンストラクタの概要
SessionRequestHandler(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res, javax.servlet.ServletConfig servletconfig)
          コンストラクタ
 
メソッドの概要
 void addUnremovableSessionAttributeName(java.lang.String key)
          除去不能なセッション情報を登録します。
 void addUnremovableSessionAttributeNames(java.lang.String[] keys)
          除去不能なセッション情報を登録します。
 void cleanupRemovableSessionAttributes()
          除去可能なセッション属性をすべてクリアします。
 java.lang.Object getSessionAttribute(java.lang.String key)
          セッション情報から指定されたキーのオブジェクトを取得します。
 java.lang.Object getSessionAttribute(java.lang.String key, boolean allowNull)
          セッション情報から指定されたキーのオブジェクトを取得します。
 java.util.List getUnremovableSessionAttributeNames()
          除去不能なセッション情報のキー名を取得します。
 IUserSession getUserSession()
          内包しているUserSessionオブジェクトを取得します。
 boolean isEnterUserId()
          Gets the enterUserId
 void logOut()
          ログ・アウト状態にします。
 void removeSessionAttribute(java.lang.String key)
          セッション情報から指定されたキーのオブジェクトを除きます。
 void removeUnremovableSessionAttributeName(java.lang.String key)
          除去不能なセッション情報を削除します。
 void sessionStateChange(java.lang.String page)
          セッション情報をHttpSessionオブジェクトにputします。
 void setEnterUserId(boolean enterUserId)
          Sets the enterUserId
 void setSessionAttribute(java.lang.String key, java.lang.Object object)
          セッション情報に指定されたキーで値を設定します。
 void setUserSession(IUserSession us)
          内包しているIUserSessionオブジェクトを設定します。
 
クラス wisdom.core.runtime.RequestHandler から継承したメソッド
closeConnection, getAttribute, getCommand, getConnection, getConnection, getConnection, getConnection, getConnection, getConnection, getConnection, getConnection, getInvoker, getReqId, getRequest, getRequestParser, getResponse, getServletConfig, getServletContext, getUser, setAttribute
 
クラス java.lang.Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

SessionRequestHandler

public SessionRequestHandler(javax.servlet.http.HttpServletRequest req,
                             javax.servlet.http.HttpServletResponse res,
                             javax.servlet.ServletConfig servletconfig)
                      throws java.lang.Exception
コンストラクタ

パラメータ:
req - HttpServletRequestのインスタンス
res - HttpServletResponseのインスタンス
servletconfig -
例外:
java.lang.Exception
メソッドの詳細

setSessionAttribute

public void setSessionAttribute(java.lang.String key,
                                java.lang.Object object)
セッション情報に指定されたキーで値を設定します。

定義:
インタフェース IRequestHandler 内の setSessionAttribute
オーバーライド:
クラス RequestHandler 内の setSessionAttribute
パラメータ:
key - 設定するオブジェクトのキー
object - 設定するオブジェクトの値

removeSessionAttribute

public void removeSessionAttribute(java.lang.String key)
セッション情報から指定されたキーのオブジェクトを除きます。

定義:
インタフェース IRequestHandler 内の removeSessionAttribute
オーバーライド:
クラス RequestHandler 内の removeSessionAttribute
パラメータ:
key - 除くオブジェクトのキー

getSessionAttribute

public java.lang.Object getSessionAttribute(java.lang.String key)
                                     throws MissingSessionObjectException
セッション情報から指定されたキーのオブジェクトを取得します。

定義:
インタフェース IRequestHandler 内の getSessionAttribute
オーバーライド:
クラス RequestHandler 内の getSessionAttribute
例外:
MissingSessionObjectException

getSessionAttribute

public java.lang.Object getSessionAttribute(java.lang.String key,
                                            boolean allowNull)
                                     throws MissingSessionObjectException
セッション情報から指定されたキーのオブジェクトを取得します。

定義:
インタフェース IRequestHandler 内の getSessionAttribute
オーバーライド:
クラス RequestHandler 内の getSessionAttribute
例外:
MissingSessionObjectException

sessionStateChange

public void sessionStateChange(java.lang.String page)
                        throws java.lang.Exception
セッション情報をHttpSessionオブジェクトにputします。

オーバーライド:
クラス RequestHandler 内の sessionStateChange
例外:
java.lang.Exception

cleanupRemovableSessionAttributes

public void cleanupRemovableSessionAttributes()
除去可能なセッション属性をすべてクリアします。
addUnemovableSessionAttbuteNameで登録された以外のセッション属性を すべてremoveします。

定義:
インタフェース IRequestHandler 内の cleanupRemovableSessionAttributes
オーバーライド:
クラス RequestHandler 内の cleanupRemovableSessionAttributes

addUnremovableSessionAttributeName

public void addUnremovableSessionAttributeName(java.lang.String key)
除去不能なセッション情報を登録します。
cleanupRemovableSessionAttributesでクリア対象外にするセッション情報のkeyを登録します。 登録されたkeyを持つセッション情報はcleanupRemovableSessionAttributesでクリアされません。

定義:
インタフェース IRequestHandler 内の addUnremovableSessionAttributeName
オーバーライド:
クラス RequestHandler 内の addUnremovableSessionAttributeName
パラメータ:
key - 除去不能なセッション情報として登録するセッション情報のキー

addUnremovableSessionAttributeNames

public void addUnremovableSessionAttributeNames(java.lang.String[] keys)
除去不能なセッション情報を登録します。
cleanupRemovableSessionAttributesでクリア対象外にするセッション情報のkeyを登録します。 登録されたkeyを持つセッション情報はcleanupRemovableSessionAttributesでクリアされません。

定義:
インタフェース IRequestHandler 内の addUnremovableSessionAttributeNames
オーバーライド:
クラス RequestHandler 内の addUnremovableSessionAttributeNames
パラメータ:
keys - 除去不能なセッション情報として登録するセッション情報のキーの配列

removeUnremovableSessionAttributeName

public void removeUnremovableSessionAttributeName(java.lang.String key)
除去不能なセッション情報を削除します。
addUnremovableSessionAttributeNameaddUnremovableSessionAttributeNames クリア対象外として登録されたkeyを削除します。

定義:
インタフェース IRequestHandler 内の removeUnremovableSessionAttributeName
オーバーライド:
クラス RequestHandler 内の removeUnremovableSessionAttributeName
パラメータ:
key - 除去不能なセッション情報を削除するセッション情報のキー

getUnremovableSessionAttributeNames

public java.util.List getUnremovableSessionAttributeNames()
除去不能なセッション情報のキー名を取得します。

定義:
インタフェース IRequestHandler 内の getUnremovableSessionAttributeNames
オーバーライド:
クラス RequestHandler 内の getUnremovableSessionAttributeNames
戻り値:
addUnremovableSessionAttributeNameaddUnremovableSessionAttributeNamesで登録された除去不能なセッション情報のキー値を含んだ配列。

logOut

public void logOut()
ログ・アウト状態にします。 このメソッドを実行した後はログインページに戻ります。


getUserSession

public IUserSession getUserSession()
内包しているUserSessionオブジェクトを取得します。

定義:
インタフェース IRequestHandler 内の getUserSession
オーバーライド:
クラス RequestHandler 内の getUserSession
戻り値:
UserSession 内包しているUserSessionオブジェクト

setUserSession

public void setUserSession(IUserSession us)
内包しているIUserSessionオブジェクトを設定します。
このメソッドは<@link wisdom.core.application.IAuthenticate>の中で設定されたセッションオブジェクトに対して 継続のコマンドで実行可能なように追加されました。このメソッドの使用は<@link wisdom.core.application.IAuthenticate#authenticate(IRequestHandler, String, String)> 内部に限定してください。
<@link wisdom.core.application.IAuthenticate#authenticate(IRequestHandler, String, String)>で引数に渡されるIRequestHandlerのインスタンスは すでにSessionRequestHandlerになっているので、引数のオブジェクトをSessionRequestHandlerにキャストしてこのメソッドを使用します。 WA0030対応 2004/11/09

パラメータ:
us -

isEnterUserId

public boolean isEnterUserId()
Gets the enterUserId

オーバーライド:
クラス RequestHandler 内の isEnterUserId
戻り値:
Returns a boolean

setEnterUserId

public void setEnterUserId(boolean enterUserId)
Sets the enterUserId

オーバーライド:
クラス RequestHandler 内の setEnterUserId
パラメータ:
enterUserId - The enterUserId to set