com.plumtree.portaluiinfrastructure.classtypedescriptors.classtypes
Class UIGateway

java.lang.Object
  extended by com.plumtree.uiinfrastructure.opener.types.AUIClassTypeDesc
      extended by com.plumtree.portaluiinfrastructure.classtypedescriptors.classtypes.UIGateway
All Implemented Interfaces:
IClassTypeDesc, IUIClassTypeDesc

public class UIGateway
extends AUIClassTypeDesc

This psuedo class type represents the ID to use to tell the Common Opener to open Gateway objects. This type is completely generic. Given the UUID of the web service, we will construct the Gateway URL based on the remote server and portlet URLs. Querystring arguments are passed on into the destination URL, thus allowing for control at the destination.

Author:
RickyW

Field Summary
static java.lang.String CACHE_KEY_GATEWAY_URLS
          Key to use for caching Gateway URLs in the Application.
static java.lang.String QS_WEBSERVICE_UUID
          Querystring name to use for UUID.
static java.lang.String UICLASSTYPEDESC_CLASSNAME
          Name that identifies this UIClassTypeDesc
 
Constructor Summary
UIGateway()
           
 
Method Summary
 java.lang.String GetClassName()
          Returns the class name of the class type.
 ClassTypeEnum GetClassType()
          Returns the class type.
static java.lang.String GetGatewayURL(java.lang.String _strWebServiceUUID, AActivitySpace _asOwner)
          Given the WebService UUID, we can construct the gateway URL that we need.
 Redirect GetRedirectViewObject(XPHashtable _htArguments, AActivitySpace _asParent, java.lang.Object _userSession)
          This method is called by the Common Opener in the view mode.
 
Methods inherited from class com.plumtree.uiinfrastructure.opener.types.AUIClassTypeDesc
GetClassKey, GetDefaultOpenerMode, GetRedirectCreateNew, GetRedirectOpenObject, GetRedirectSearchBrowse, GetRedirectSearchEdit, GetRedirectViewObjectMetaData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UICLASSTYPEDESC_CLASSNAME

public static final java.lang.String UICLASSTYPEDESC_CLASSNAME
Name that identifies this UIClassTypeDesc

See Also:
Constant Field Values

QS_WEBSERVICE_UUID

public static final java.lang.String QS_WEBSERVICE_UUID
Querystring name to use for UUID.

See Also:
Constant Field Values

CACHE_KEY_GATEWAY_URLS

public static final java.lang.String CACHE_KEY_GATEWAY_URLS
Key to use for caching Gateway URLs in the Application.

See Also:
Constant Field Values
Constructor Detail

UIGateway

public UIGateway()
Method Detail

GetClassName

public java.lang.String GetClassName()
Description copied from interface: IUIClassTypeDesc
Returns the class name of the class type. This is a unique string that identifies this class. When the Opener sees "open=XYZ" where "XYZ" is not an integer, it will invoke the ClassTypeDesc with the matching class name. Note that class name should not be an integer representation, i.e. "512", because it will collide with PT_CLASSIDS.

Specified by:
GetClassName in interface IUIClassTypeDesc
Specified by:
GetClassName in class AUIClassTypeDesc
Returns:
The class name of the class type.

GetClassType

public ClassTypeEnum GetClassType()
Description copied from interface: IClassTypeDesc
Returns the class type.

Specified by:
GetClassType in interface IClassTypeDesc
Overrides:
GetClassType in class AUIClassTypeDesc
Returns:
The class type.

GetRedirectViewObject

public Redirect GetRedirectViewObject(XPHashtable _htArguments,
                                      AActivitySpace _asParent,
                                      java.lang.Object _userSession)
Description copied from interface: IClassTypeDesc
This method is called by the Common Opener in the view mode. Depending on what class type you are dealing with, the Common Opener will invoke the correct implemented method. Some class types may need to override this so that they can put additional control arguments in.

Specified by:
GetRedirectViewObject in interface IClassTypeDesc
Specified by:
GetRedirectViewObject in class AUIClassTypeDesc
Parameters:
_htArguments - Arguments to reach the new space.
_asParent - The parent activity space.
_userSession - The current session.
Returns:
A redirect that will bring you to the view activity space for the particular class/object.

GetGatewayURL

public static java.lang.String GetGatewayURL(java.lang.String _strWebServiceUUID,
                                             AActivitySpace _asOwner)
Given the WebService UUID, we can construct the gateway URL that we need. From the UUID, we get access to our web service and the remote server for the web service. From the remote server we can get the remote URL. From the web service, we by default get the Portlet URL. Given that external URL, we can generate our gateway URL. The gateway URLs will be cached by UUID.

Parameters:
_strWebServiceUUID - The UUID of the Web Service to use.
_asOwner - The activity space gives us session and more.
Returns:
The gateway URL given the specified web service UUID.



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