planetj.dataengine.security.http
Class DBCommonConnectionPoolSignOn

java.lang.Object
  |
  +--planetj.dataengine.security.http.GenericSignOn
        |
        +--planetj.dataengine.security.http.DBCommonConnectionPoolSignOn
All Implemented Interfaces:
ISignOn, Serializable
Direct Known Subclasses:
LocalUsersOnlyOrOperatingSystemProfile

public class DBCommonConnectionPoolSignOn
extends GenericSignOn

Verifies signon information by trying to connect to the database. The connection is only used to verify the signon; the actual application data access is done with one of the connections in the connection pool which is probably associated with a different userid.

See Also:
Serialized Form

Field Summary
 
Fields inherited from interface planetj.dataengine.security.http.ISignOn
GLOBAL_SIGNON_KEY_OPERATION_ID, GLOBAL_SIGNON_KEY_SYSTEM_ALIAS, TIMEOUT_SECONDS
 
Constructor Summary
DBCommonConnectionPoolSignOn()
          JDBCConnectionPoolSignon constructor comment.
 
Method Summary
 boolean isAlreadySignedOn(String userId, ISecured secured, javax.servlet.http.HttpServletRequest request)
          Check if user has already signed on to secured application.
 void prepareForSignOn(ISecured secured, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          If any subclasses need to do anything special before sign on, they can override this method and call it accordingly.
 void signOff(String pUserId, ISecured pSecuredApp, javax.servlet.http.HttpServletRequest pReq)
          Signs the user off of the secured application.
 boolean signOn(String pUserId, String pPassword, ISecured pSecuredApplication, javax.servlet.http.HttpServletRequest pReq)
          Signs on to an Application..
 
Methods inherited from class planetj.dataengine.security.http.GenericSignOn
getFailureMessage, getMaximumSignOnFailures, getSignOnURI, isAdditionalSignOnRequired, isUserPromptRequired, processSignOnAttemptsExhausted, sessionExpired, updateProperties
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DBCommonConnectionPoolSignOn

public DBCommonConnectionPoolSignOn()
JDBCConnectionPoolSignon constructor comment.

Method Detail

isAlreadySignedOn

public boolean isAlreadySignedOn(String userId,
                                 ISecured secured,
                                 javax.servlet.http.HttpServletRequest request)
                          throws CMException
Check if user has already signed on to secured application.

Specified by:
isAlreadySignedOn in interface ISignOn
Overrides:
isAlreadySignedOn in class GenericSignOn
Parameters:
userId - Id of user signing in.
secured - Secured application signing in to.
request - The http request
CMException

prepareForSignOn

public void prepareForSignOn(ISecured secured,
                             javax.servlet.http.HttpServletRequest request,
                             javax.servlet.http.HttpServletResponse response)
                      throws CMException
Description copied from class: GenericSignOn
If any subclasses need to do anything special before sign on, they can override this method and call it accordingly.

Specified by:
prepareForSignOn in interface ISignOn
Overrides:
prepareForSignOn in class GenericSignOn
CMException

signOff

public void signOff(String pUserId,
                    ISecured pSecuredApp,
                    javax.servlet.http.HttpServletRequest pReq)
             throws CMException
Signs the user off of the secured application. This is an optional method - it is okay to provide an empty implementation. Keep in mind that this method may never be invoked since the user may stop using the secured application without logging off.

Specified by:
signOff in interface ISignOn
Overrides:
signOff in class GenericSignOn
CMException

signOn

public boolean signOn(String pUserId,
                      String pPassword,
                      ISecured pSecuredApplication,
                      javax.servlet.http.HttpServletRequest pReq)
               throws CMException
Signs on to an Application.. This method is only invoked if the user has not already signed on. As part of the sign on process, a SignOnReceipt object should be created and stored in the session using the setSignOnReceipt() method. In addition, this method should initialize any connection pools that will be used by the application.

Parameters:
pUserId - The user id identifying the user signing on to the application
pPassword - The password for signing on to the application
pReq - The HttpServletRequest representing the http request of the user. Additional sign on information can be stored as attributes in the request.

This SignOn object supports the following sign on attributes in the request:
  • TIMEOUT_SECONDS - An Integer specifying the number of seconds for which the sign on is valid
pSecuredApplication - The Secured Application object representing the application which is being signed on to.
Returns:
If the sign on was successful true should be returned. A return value of false or a thrown CMException indicates that the sign on failed.
CMException