com.plumtree.uiinfrastructure.login
Interface IAuthenticator

All Known Implementing Classes:
Authenticator, HTTPBasicAuthenticator, SSOAuthenticator, TokenAuthenticator

public interface IAuthenticator

IAuthenticator defines the interface necessary to implement an authentication module.

Author:
WilliamA

Method Summary
 Redirect GetOrSendLoginChallenge(RequestData requestData)
          This method returns a Redirect object to the login page.
 LoginResult Login(RequestData requestData)
          This method performs the login operation.
 boolean Logout(RequestData requestData)
          This method performs the logout operation.
 boolean UseThisAuth(RequestData requestData)
          This method indicates whether the authentication method this class implements is applicable to the current request given in the requestData.
 

Method Detail

Login

LoginResult Login(RequestData requestData)
This method performs the login operation. The LoginResult returned by this method communicates the status of the login operation. Please do not modify the content of the requestData inside this method (use requestData only as a context to perform the login). LoginResult should be the place to convey any results back to the caller.

Parameters:
requestData - the request
Returns:
LoginResult containing the status of the login operation, as well as the supporting information, including the generated PTSession, and any Redirect generated by Login Action PEI.

GetOrSendLoginChallenge

Redirect GetOrSendLoginChallenge(RequestData requestData)
This method returns a Redirect object to the login page. If the login challenge requires additional features (e.g., special HTTP headers in the response, as in the case for HTTP Basic authentication), which cannot be served by a Redirect object, this method may send the login challenge directly using the XPResponse object contained in the requestData.

This method may throw an InterpreterException (com.plumtree.uiinfrastructure.interpreter.InterpreterException) if for some reason the login challenge for this authentication method cannot be generated nor sent.

Parameters:
requestData - the request
Returns:
the Redirect to the login page, or null if the login challenge has been sent out directly using the XPResponse in the requestData.

Logout

boolean Logout(RequestData requestData)
This method performs the logout operation. If the user needs to be redirected to some other URL for logout (e.g., SSO logout), this method may internally use the XPResponse in the requestData to send an HTTP redirect to the logout URL.

Parameters:
requestData - the request
Returns:
a boolean indicating whether the user has been logged out (and/or redirected to a logout URL) or not. If it is true, the Interpreter shall not do any further processing of the request.

UseThisAuth

boolean UseThisAuth(RequestData requestData)
This method indicates whether the authentication method this class implements is applicable to the current request given in the requestData.

Parameters:
requestData -
Returns:
a boolean indicating whether the authentication method is applicable to the request in the requestData



Copyright © 2002,2003,2004,2005 Plumtree Software, Inc., All Rights Reserved.