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 at...@apache.org on 2009/04/24 15:02:26 UTC
svn commit: r768293 - in /portals/jetspeed-2/portal/trunk:
components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/
components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/
components/jetspeed-registry/src/main/java/org/ap...
Author: ate
Date: Fri Apr 24 13:02:25 2009
New Revision: 768293
URL: http://svn.apache.org/viewvc?rev=768293&view=rev
Log:
JS2-954: Add support for JSR-286 Portlet Managed PortletModes
Modified:
portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/JetspeedNavigationalStateCodec.java
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/registry_repository.xml
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java
portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/JetspeedNavigationalStateCodec.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/JetspeedNavigationalStateCodec.java?rev=768293&r1=768292&r2=768293&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/JetspeedNavigationalStateCodec.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-portal/src/main/java/org/apache/jetspeed/container/state/impl/JetspeedNavigationalStateCodec.java Fri Apr 24 13:02:25 2009
@@ -59,6 +59,7 @@
protected static final char ACTION_SCOPE_ID_KEY = 'k';
protected static final char PUBLIC_RENDER_PARAM_KEY = 'l';
protected static final char RENDERED_ACTION_SCOPE_ID_KEY = 'm';
+ protected static final char PORTLET_MANAGED_MODE_KEY = 'n';
protected static final char[] URLTYPE_ID_KEYS = { 'b', 'g', 'a' };
protected static final String keytable = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
@@ -401,8 +402,22 @@
if (state.getPortletMode() != null)
{
buffer.append(PARAMETER_SEPARATOR);
- buffer.append(MODE_KEY);
- buffer.append(encodePortletMode(state.getPortletMode()));
+ boolean found = false;
+ for ( int i = 0; i < portletModes.length; i++ )
+ {
+ if (portletModes[i].equals(state.getPortletMode()))
+ {
+ buffer.append(MODE_KEY);
+ buffer.append(keytable.charAt(i));
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ {
+ buffer.append(PORTLET_MANAGED_MODE_KEY);
+ buffer.append(state.getPortletMode().toString());
+ }
encoded = true;
}
if (state.getWindowState() != null)
@@ -562,6 +577,11 @@
}
break;
}
+ case PORTLET_MANAGED_MODE_KEY:
+ {
+ currentState.setPortletMode(new PortletMode(parameter.substring(1)));
+ break;
+ }
case STATE_KEY:
{
WindowState windowState = decodeWindowState(parameter.charAt(1));
@@ -722,16 +742,6 @@
return portletMode;
}
- protected char encodePortletMode(PortletMode portletMode)
- {
- for ( int i = 0; i < portletModes.length; i++ )
- {
- if (portletModes[i].equals(portletMode))
- return keytable.charAt(i);
- }
- throw new IllegalArgumentException("Unsupported PortletMode: "+portletMode);
- }
-
protected WindowState decodeWindowState(char state)
{
WindowState windowState = null;
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/registry_repository.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/registry_repository.xml?rev=768293&r1=768292&r2=768293&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/registry_repository.xml (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/registry_repository.xml Fri Apr 24 13:02:25 2009
@@ -1290,6 +1290,15 @@
jdbc-type="VARCHAR"
/>
+ <field-descriptor
+ name="portalManaged"
+ column="PORTAL_MANAGED"
+ jdbc-type="INTEGER"
+ conversion="org.apache.ojb.broker.accesslayer.conversions.Boolean2IntFieldConversion"
+ nullable="false"
+ >
+ </field-descriptor>
+
<collection-descriptor
name="descriptions"
element-class-ref="org.apache.jetspeed.om.portlet.impl.DescriptionImpl"
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java?rev=768293&r1=768292&r2=768293&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java Fri Apr 24 13:02:25 2009
@@ -489,13 +489,12 @@
{
return mode;
}
- else if (JetspeedActions.getExtendedPortletModes().contains(mode))
+ else
{
// make sure transient cache is setup
getSupportedPortletModes();
return supportedCustomModes.get(mode);
}
- return null;
}
public List<CustomPortletMode> getCustomPortletModes()
@@ -589,7 +588,7 @@
for (CustomPortletMode customMode : getCustomPortletModes())
{
- if ( !list.contains(customMode.getCustomMode()) && JetspeedActions.getExtendedPortletModes().contains(customMode.getMappedMode()) )
+ if ( !list.contains(customMode.getCustomMode()) && (!customMode.isPortalManaged() || JetspeedActions.getExtendedPortletModes().contains(customMode.getMappedMode())) )
{
list.add(customMode.getCustomMode());
supportedCustomModes.put(customMode.getMappedMode(), customMode.getCustomMode());
Modified: portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml?rev=768293&r1=768292&r2=768293&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml (original)
+++ portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml Fri Apr 24 13:02:25 2009
@@ -262,6 +262,7 @@
<column name="APPLICATION_ID" required="true" type="INTEGER"/>
<column name="CUSTOM_NAME" required="true" size="150" type="VARCHAR"/>
<column name="MAPPED_NAME" size="150" type="VARCHAR"/>
+ <column name="PORTAL_MANAGED" required="true" type="BOOLEANINT"/>
<foreign-key foreignTable="PORTLET_APPLICATION" name="FK_CUSTOM_PORTLET_MODE_1" onDelete="cascade">
<reference foreign="APPLICATION_ID" local="APPLICATION_ID"/>
</foreign-key>
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org