You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2006/03/25 08:46:26 UTC
svn commit: r388719 - in
/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl:
AbstractPortalURL.java DesktopEncodingPortalURL.java
Author: taylor
Date: Fri Mar 24 23:46:25 2006
New Revision: 388719
URL: http://svn.apache.org/viewcvs?rev=388719&view=rev
Log:
http://issues.apache.org/jira/browse/JS2-514
implement actions in desktop/portlet-pipelined requests
Modified:
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/AbstractPortalURL.java
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/DesktopEncodingPortalURL.java
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/AbstractPortalURL.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/AbstractPortalURL.java?rev=388719&r1=388718&r2=388719&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/AbstractPortalURL.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/AbstractPortalURL.java Fri Mar 24 23:46:25 2006
@@ -42,18 +42,18 @@
{
public static final String DEFAULT_NAV_STATE_PARAMETER = "_ns";
- private static String navStateParameter;
+ protected static String navStateParameter;
- private NavigationalState navState;
- private BasePortalURL base = null;
+ protected NavigationalState navState;
+ protected BasePortalURL base = null;
- private String contextPath;
- private String basePath;
- private String path;
- private String encodedNavState;
- private String secureBaseURL;
- private String nonSecureBaseURL;
- private String characterEncoding = "UTF-8";
+ protected String contextPath;
+ protected String basePath;
+ protected String path;
+ protected String encodedNavState;
+ protected String secureBaseURL;
+ protected String nonSecureBaseURL;
+ protected String characterEncoding = "UTF-8";
public AbstractPortalURL(NavigationalState navState, PortalContext portalContext, BasePortalURL base)
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/DesktopEncodingPortalURL.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/DesktopEncodingPortalURL.java?rev=388719&r1=388718&r2=388719&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/DesktopEncodingPortalURL.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/container/url/impl/DesktopEncodingPortalURL.java Fri Mar 24 23:46:25 2006
@@ -24,6 +24,7 @@
import javax.servlet.http.HttpServletRequest;
import org.apache.jetspeed.PortalContext;
+import org.apache.jetspeed.container.ContainerConstants;
import org.apache.jetspeed.container.state.NavigationalState;
import org.apache.jetspeed.container.url.BasePortalURL;
import org.apache.pluto.om.window.PortletWindow;
@@ -41,30 +42,36 @@
*/
public class DesktopEncodingPortalURL extends AbstractPortalURL
{
- private final String javascriptDoRender;
+ protected final String javascriptDoRender;
+ protected final String javascriptDoAction;
+ protected String baseActionPath;;
- public DesktopEncodingPortalURL(NavigationalState navState, PortalContext portalContext, String javascriptDoRender, BasePortalURL base)
+ public DesktopEncodingPortalURL(NavigationalState navState, PortalContext portalContext, String javascriptDoRender, String javascriptDoAction, BasePortalURL base)
{
super(navState, portalContext, base);
- this.javascriptDoRender = javascriptDoRender;
+ this.javascriptDoRender = javascriptDoRender;
+ this.javascriptDoAction = javascriptDoAction;
}
- public DesktopEncodingPortalURL(NavigationalState navState, PortalContext portalContext, String javascriptDoRender)
+ public DesktopEncodingPortalURL(NavigationalState navState, PortalContext portalContext, String javascriptDoRender, String javascriptDoAction)
{
super(navState, portalContext);
this.javascriptDoRender = javascriptDoRender;
+ this.javascriptDoAction = javascriptDoAction;
}
public DesktopEncodingPortalURL(String characterEncoding, NavigationalState navState, PortalContext portalContext)
{
super(characterEncoding, navState, portalContext);
this.javascriptDoRender = null;
+ this.javascriptDoAction = null;
}
public DesktopEncodingPortalURL(HttpServletRequest request, String characterEncoding, NavigationalState navState, PortalContext portalContext)
{
super(request, characterEncoding, navState, portalContext);
- this.javascriptDoRender = null;
+ this.javascriptDoRender = null;
+ this.javascriptDoAction = null;
}
protected void decodePathAndNavigationalState(HttpServletRequest request)
@@ -112,18 +119,35 @@
protected String createPortletURL(String encodedNavState, boolean secure)
{
- return createPortletURL(encodedNavState, secure, null);
+ return createPortletURL(encodedNavState, secure, null, false);
}
- protected String createPortletURL(String encodedNavState, boolean secure, PortletWindow window)
+ protected String createPortletURL(String encodedNavState, boolean secure, PortletWindow window, boolean action)
{
StringBuffer buffer = new StringBuffer("");
- if (this.javascriptDoRender != null)
+ if (action)
{
- buffer.append(this.javascriptDoRender + "(\"");
- }
+ if (this.javascriptDoAction != null)
+ {
+ buffer.append(this.javascriptDoAction + "(\"");
+ }
+ }
+ else
+ {
+ if (this.javascriptDoRender != null)
+ {
+ buffer.append(this.javascriptDoRender + "(\"");
+ }
+ }
buffer.append(getBaseURL(secure));
- buffer.append(getBasePath());
+ if (action)
+ {
+ buffer.append(this.baseActionPath);
+ }
+ else
+ {
+ buffer.append(getBasePath());
+ }
if ( encodedNavState != null )
{
buffer.append("/");
@@ -135,16 +159,33 @@
{
buffer.append(getPath());
}
- if (this.javascriptDoRender != null)
+ if (action)
{
- if (window != null)
+ if (this.javascriptDoAction != null)
{
- buffer.append("\",\"");
- buffer.append(window.getPortletEntity().getId());
- buffer.append("\"");
+ if (window != null)
+ {
+ buffer.append("\",\"");
+ buffer.append(window.getPortletEntity().getId());
+ buffer.append("\"");
+ }
+ buffer.append(")");
}
- buffer.append(")");
}
+ else
+ {
+ if (this.javascriptDoRender != null)
+ {
+ if (window != null)
+ {
+ buffer.append("\",\"");
+ buffer.append(window.getPortletEntity().getId());
+ buffer.append("\"");
+ }
+ buffer.append(")");
+ }
+ }
+ System.out.println("*** " + buffer.toString());
return buffer.toString();
}
@@ -152,7 +193,7 @@
{
try
{
- return createPortletURL(this.getNavigationalState().encode(window,parameters,mode,state,action), secure, window);
+ return createPortletURL(this.getNavigationalState().encode(window,parameters,mode,state,action), secure, window, action);
}
catch (UnsupportedEncodingException e)
{
@@ -161,6 +202,12 @@
// to keep the compiler happy
return null;
}
+ }
+
+ protected void decodeBasePath(HttpServletRequest request)
+ {
+ super.decodeBasePath(request);
+ this.baseActionPath = contextPath + "/action";
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org