com.plumtree.portalpages.browsing.login
Class DefaultLoginControl
java.lang.Object
com.plumtree.portalpages.browsing.login.DefaultLoginControl
- All Implemented Interfaces:
- IControl, IHTTPControl, ILoginControl, IManagedObject, IMVCObject
public class DefaultLoginControl
- extends java.lang.Object
- implements IHTTPControl, ILoginControl
- Author:
- BenG
This control executes immediately when the portal is hit. This control
is the default control for the Login activity space. This control
gets cookies sent, and attempts to log the user into the portal if the
correct cookies are obtained.
Method Summary |
Redirect |
CheckActionSecurityAndExecute(XPHashtable arguments)
Execute the control business logic and optionally return a Redirect object
pointing to another AActivitySpace. |
java.lang.Object |
Create()
This method is used by the ASManager to return new instances of managed
objects. |
boolean |
DoGetSession()
This method is called by the Interpreter to determine whether or not to
subsequently call GetSession and perform login/logout code. |
java.lang.String |
GetName()
Return the name of the MVC object. |
java.lang.Object |
GetSession()
This method is called by the Interpreter after calling Execute on the
LoginControl. |
void |
Init(IModel model,
AActivitySpace space)
Initialize the control with the model it should use and it's parent
AActivitySpace. |
void |
SetHTTPItems(IXPRequest r,
IWebData webdata)
This method provides access to the XPRequest. |
void |
SetRedirectForUseAfterLogin(Redirect r)
This method sets a redirect on the login control for use after a
successful login. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
STR_MVC_CLASS_NAME
public static final java.lang.String STR_MVC_CLASS_NAME
- object name
- See Also:
- Constant Field Values
DefaultLoginControl
public DefaultLoginControl()
CheckActionSecurityAndExecute
public Redirect CheckActionSecurityAndExecute(XPHashtable arguments)
- Description copied from interface:
IControl
- Execute the control business logic and optionally return a Redirect object
pointing to another AActivitySpace. Returning null means that the user
should return to the parent AActivitySpace's current page.
This method is designed to check that the user has access to perform the
actions with the given parameters. If the user does not, a redirect object
which has had Redirect.SetRedirectToLogin(true) called on it. If the user
is the Guest, this will bounce to the login page and back to the Redirect
after the user has logged on. If the user is already logged on, they will
be redirected to an error page.
In general, the error redirect that is returned should contain all of the
query string parameters that made up the URL that originally led to the
control.
Checking whether or not a particular user ever has any access to the space,
page, and control should be done in IPTActivitySpace.CheckBasicAccess().
- Specified by:
CheckActionSecurityAndExecute
in interface IControl
- Returns:
- Redirect where to redirect to after the control is finished executing.
This will go to the login page or an error page if Redirect.SetRedirectToLogin(true)
has been called.
- See Also:
com.plumtree.xpshared.activityspace.IControl#execute()
Create
public java.lang.Object Create()
- Description copied from interface:
IManagedObject
- This method is used by the ASManager to return new instances of managed
objects.
- Specified by:
Create
in interface IManagedObject
- Returns:
- A new instance of the managed class (i.e. return new Foo();)
- See Also:
IManagedObject.Create()
DoGetSession
public boolean DoGetSession()
- Description copied from interface:
ILoginControl
- This method is called by the Interpreter to determine whether or not to
subsequently call GetSession and perform login/logout code.
If this returns false, the session will remain unchanged.
- Specified by:
DoGetSession
in interface ILoginControl
- Returns:
- boolean true implies GetSession() will be called
- See Also:
com.plumtree.xpshared.activityspace.ILoginControl#DoGetSession()
GetName
public java.lang.String GetName()
- Description copied from interface:
IMVCObject
- Return the name of the MVC object.
- Specified by:
GetName
in interface IMVCObject
- Returns:
- the name of the object.
- See Also:
com.plumtree.xpshared.activityspace.IControl#GetName()
GetSession
public java.lang.Object GetSession()
- Description copied from interface:
ILoginControl
- This method is called by the Interpreter after calling Execute on the
LoginControl. The User Session returned will be stored on the user's
HTTPSession. If null is returned, the user's session will be removed
from the HTTPSession for logout.
- Specified by:
GetSession
in interface ILoginControl
- Returns:
- Object null implies logoff
session implies login as this session
- See Also:
com.plumtree.xpshared.activityspace.ILoginControl#GetSession()
Init
public void Init(IModel model,
AActivitySpace space)
- Description copied from interface:
IControl
- Initialize the control with the model it should use and it's parent
AActivitySpace. This method needs to be called before any other methods.
This method also clears all internal data so the control can be used again
without fear of mixing data.
- Specified by:
Init
in interface IControl
- See Also:
com.plumtree.xpshared.activityspace.IControl#Init(IModelRW)
SetHTTPItems
public void SetHTTPItems(IXPRequest r,
IWebData webdata)
- Description copied from interface:
IHTTPControl
- This method provides access to the XPRequest. It will be called
by the Interpreter before CheckActionSecurityAndExecute() is called.
Although these parameters will need to be cached so they can be used
during CheckActionSecurityAndExecute(), they should be nulled out
at the end of that method to make sure they are not leaked, as the
control is stored on the HTTPSession.
- Specified by:
SetHTTPItems
in interface IHTTPControl
- Parameters:
r
- webdata
-
SetRedirectForUseAfterLogin
public void SetRedirectForUseAfterLogin(Redirect r)
- Description copied from interface:
ILoginControl
- This method sets a redirect on the login control for use after a
successful login. This allows a user to be bounced from a page
if they are not logged in, and then return to that page after they
log in.
- Specified by:
SetRedirectForUseAfterLogin
in interface ILoginControl
- See Also:
com.plumtree.xpshared.activityspace.ILoginControl#SetRedirectForUseAfterLogin(Redirect)