com.plumtree.portalpages.browsing.directory.rest
Class DirRESTControl

java.lang.Object
  extended by com.plumtree.portalpages.browsing.directory.rest.DirRESTControl
All Implemented Interfaces:
IControl, IManagedObject, IMVCObject

public class DirRESTControl
extends java.lang.Object
implements IControl

This control handles processing incoming requests for the KD REST API. It currently only handles JSON input.


Field Summary
protected  AActivitySpace m_asOwner
          The owning space for this control.
protected  IDirModel m_dirModel
          The instance of the directory model to use when processing data.
static java.lang.String STR_MVC_CLASS_NAME
           
 
Constructor Summary
DirRESTControl()
           
 
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.
 Redirect GetDPRedirect()
           
 java.lang.String GetName()
          Return the name of the MVC object.
 void Init(IModel model, AActivitySpace space)
          Initialize the control with the model it should use and it's parent AActivitySpace.
 Redirect ProcessAction(IJSONParser _parser, int _nFolderID)
          This method handles parsing the JSON body and executing the appropriate command.
 Redirect ProcessError(IRESTError _error)
          This helper method sets the error on the model and redirects to the REST API display page.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

STR_MVC_CLASS_NAME

public static final java.lang.String STR_MVC_CLASS_NAME
See Also:
Constant Field Values

m_asOwner

protected AActivitySpace m_asOwner
The owning space for this control.


m_dirModel

protected IDirModel m_dirModel
The instance of the directory model to use when processing data.

Constructor Detail

DirRESTControl

public DirRESTControl()
Method Detail

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.

ProcessAction

public Redirect ProcessAction(IJSONParser _parser,
                              int _nFolderID)
This method handles parsing the JSON body and executing the appropriate command.

Parameters:
_parser - The parser with the JSON object already loaded.
_nFolderID - The folder to create the object in.
Returns:
An error redirect, if necessary. Null if there were no errors.

ProcessError

public Redirect ProcessError(IRESTError _error)
This helper method sets the error on the model and redirects to the REST API display page.

Parameters:
_nErrorID - the current error code.
Returns:
The redirect to the KD REST API display page.

GetDPRedirect

public Redirect GetDPRedirect()
Returns:
the redirect to the KD REST API display page.

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

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.

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();)



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