View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    * 
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   * 
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.jetspeed;
18  
19  /***
20   * PortalReservedParameters. The constants here define HTTP request parameters 
21   * reserved for use by the Jetspeed Portal.
22   *
23   * @author <a href="mailto:taylor@apache.org">David Sean Taylor</a>
24   * @version $Id: PortalReservedParameters.java 569464 2007-08-24 17:43:28Z taylor $
25   */
26  public interface PortalReservedParameters
27  {
28      public final static String PORTLET = "portlet";
29      public final static String PORTLET_ENTITY = "entity";        
30      public final static String PAGE = "page";
31      public final static String PIPELINE = "pipeline";
32      public final static String DEFAULT_PIPELINE = "jetspeed-pipeline";
33      public final static String PORTLET_PIPELINE = "portlet-pipeline";
34      public final static String ACTION_PIPELINE = "action-pipeline";
35      public final static String LOGIN_PIPELINE = "login-pipeline";
36      public final static String CONFIG_PIPELINE = "config-pipeline";
37      public final static String DESKTOP_CONFIG_PIPELINE = "dtconfig-pipeline";
38      public final static String CONFIG_PIPELINE_NAME = "ConfigurePipeline";
39      public final static String DESKTOP_CONFIG_PIPELINE_NAME = "DesktopConfigurePipeline";
40      public final static String JETSPEED_CONFIG_PIPELINE_NAME = "JetspeedPipeline";
41      
42      // Session and Request attribute keys
43      public static final String PAGE_ATTRIBUTE = "org.apache.jetspeed.Page";
44      public static final String PAGE_EDIT_ACCESS_ATTRIBUTE = "org.apache.jetspeed.decoration.PageEditAccess";
45      public static final String SESSION_KEY_SUBJECT = "org.apache.jetspeed.security.subject";
46      public static final String REQUEST_CONTEXT_ATTRIBUTE = "org.apache.jetspeed.request.RequestContext";
47      public static final String REQUEST_CONTEXT_OBJECTS = "org.apache.jetspeed.request.RequestContextObjects";
48      public static final String FRAGMENT_ATTRIBUTE = "org.apache.jetspeed.Fragment";
49      public static final String MAXIMIZED_FRAGMENT_ATTRIBUTE = "org.apache.jetspeed.maximized.Fragment";    
50      public static final String MAXIMIZED_LAYOUT_ATTRIBUTE = "org.apache.jetspeed.maximized.Layout";
51      public static final String JETSPEED_POWER_TOOL_REQ_ATTRIBUTE = "org.apache.jetspeed.velocity.JetspeedPowerTool";
52      public static final String PREFERED_LANGUAGE_ATTRIBUTE = "org.apache.jetspeed.prefered.language";
53      public static final String PREFERED_LOCALE_ATTRIBUTE = "org.apache.jetspeed.prefered.locale";
54      public static final String PREFERED_CHARACTERENCODING_ATTRIBUTE = "org.apache.jetspeed.prefered.characterencoding";
55      public static final String CONTENT_DISPATCHER_ATTRIBUTE = "org.apache.jetspeed.ContentDispatcher";
56      public static final String OVERRIDE_PORTLET_TITLE_ATTR = "org.apache.jetspeed.portlet.title";
57      public static final String HEADER_RESOURCE_ATTRIBUTE = "org.apache.jetspeed.headerresource";
58      public static final String HEADER_CONFIGURATION_ATTRIBUTE = "org.apache.jetspeed.headerconfiguration";
59      public static final String HEADER_NAMED_RESOURCE_ATTRIBUTE = "org.apache.jetspeed.headernamedresource";
60      public static final String HEADER_NAMED_RESOURCE_ADDED_FRAGMENTS_ATTRIBUTE = "org.apache.jetspeed.headernamedresourceaddedfragments";
61      public static final String HEADER_NAMED_RESOURCE_REGISTRY_ATTRIBUTE = "org.apache.jetspeed.headernamedresourceregistry";
62      public static final String PATH_ATTRIBUTE = "org.apache.jetspeed.Path";
63      public static final String PARAMETER_ALREADY_DECODED_ATTRIBUTE = "org.apache.jetspeed.parameterAlreadyDecoded";
64      public static final String RESOVLER_CACHE_ATTR = "org.apache.jetspeed.resovler.cache";
65      public static final String PORTLET_DEFINITION_ATTRIBUTE = "org.apache.jetspeed.portlet.definition";
66      public static final String PORTLET_WINDOW_ATTRIBUTE = "org.apache.jetspeed.portlet.window";
67      public static final String PAGE_THEME_ATTRIBUTE = "org.apache.jetspeed.theme";
68      public static final String PAGE_LAYOUT_VIEW = "org.apache.jetspeed.layout.view";
69      public static final String PAGE_LAYOUT_MAX = "org.apache.jetspeed.layout.max";
70      public static final String PAGE_LAYOUT_HELP = "org.apache.jetspeed.layout.help";
71      public static final String PAGE_LAYOUT_EDIT = "org.apache.jetspeed.layout.edit";
72      public static final String PAGE_LAYOUT_SOLO = "org.apache.jetspeed.layout.solo";
73  
74      /***
75       * Setting this as a session attribute will override all themes declared in
76       * psml. Sample values are "Simple", "tigris", "jetspeed"
77       */
78      public static final String PAGE_THEME_OVERRIDE_ATTRIBUTE = "org.apache.jetspeed.theme.override";
79      public static final String PORTAL_FILTER_ATTRIBUTE = "org.apache.jetspeed.login.filter.PortalFilter";
80      
81      //
82      // Settings for Metadata on jetspeed-portlet.xml
83      //
84      /***
85       * Actions can be marked as non-standard if they don't participate in
86       * JSR-168 standard action behavior. By default, actions are supposed
87       * to clear the cache of all other portlets on the page.
88       * By setting this parameter, we can ignore the standard behavior
89       * and not clear the cache on actions. This is useful for portlets
90       * which never participate with other portlets.
91       */
92      public static final String PORTLET_EXTENDED_DESCRIPTOR_NON_STANDARD_ACTION = "nonStandardAction";
93      /***
94       * A portlet can have a specific setting for the timeout duration that the portal will wait
95       * before it gives up on rendering the portlet. This value overrides the system setting.
96       * The timeout value is in milliseconds 
97       */
98      public static final String PORTLET_EXTENDED_DESCRIPTOR_RENDER_TIMEOUT = "timeout";
99      
100     /***
101      *  Until version 2.1, Jetspeed merged portal request parameters with portlet specific
102      *  parameters, effectively allowing "shared" parameters.
103      *  <p>
104      *  This is not compliant with the JSR-168 PLT.11, so by default this is now disabled
105      *  through global settings in jetspeed.properties:
106      *  <pre>
107      *    merge.portal.parameters.with.portlet.parameters=false
108      *    merge.portal.parameters.before.portlet.parameters=false
109      *  </pre>
110      *  <p>
111      *  To support legacy portlets still relying on the "old" behavior these default global
112      *  settings can be overridden by defining these values in the portlet Metadata too.
113      *  </p>
114      *  <p>
115      *  Setting merge.portal.parameters.with.portlet.parameters=true will "restore" the old behavior and
116      *  merge the portal parameters with the portlet parameters.
117      *  </p>
118      */
119     public static final String PORTLET_EXTENDED_DESCRIPTOR_MERGE_PORTAL_PARAMETERS_WITH_PORTLET_PARAMETERS = "merge.portal.parameters.with.portlet.parameters";
120 
121     /***
122      *  Until version 2.1, Jetspeed merged portal request parameters with portlet specific
123      *  parameters, effectively allowing "shared" parameters.
124      *  <p>
125      *  This is not compliant with the JSR-168 PLT.11, so by default this is now disabled
126      *  through global settings in jetspeed.properties:
127      *  <pre>
128      *    merge.portal.parameters.with.portlet.parameters=false
129      *    merge.portal.parameters.before.portlet.parameters=false
130      *  </pre>
131      *  <p>
132      *  To support legacy portlets still relying on the "old" behavior these default global
133      *  settings can be overridden by defining these values in the portlet Metadata too.
134      *  </p>
135      *  <p>
136      *  In the situation of portal and portlet parameters with the same name, by default
137      *  the portlet parameters will be provided first in the values array, but this
138      *  can be overridden by setting merge.portal.parameters.before.portlet.parameters=true.
139      *  </p>
140      */
141      public static final String PORTLET_EXTENDED_DESCRIPTOR_MERGE_PORTAL_PARAMETERS_BEFORE_PORTLET_PARAMETERS = "merge.portal.parameters.before.portlet.parameters";
142      
143      /***
144       * Preliminary Portlet API 2.0 ResourceURL support.
145       * By setting the RenderURL parameter PORTLET_RESOURCE_URL_REQUEST_PARAMETER (with whatever value) the Jetspeed encoded PortletURL
146       * will be marked as a ResourceURL (the parameter itself will not be stored).
147       * By invoking such a Render/ResourceURL, NavigationalState.getPortletWindowOfResource() will be set, and with an custom Valve 
148       * (example implementation o.a.j.resource.ResourceValveImpl) this PortletWindow can be invoked directly,
149       * similar as an ActionURL but as a direct Portlet Render request.
150       */
151      public static final String PORTLET_RESOURCE_URL_REQUEST_PARAMETER = "org.apache.jetspeed.portlet.resource.url";
152 }