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 we...@apache.org on 2005/11/03 18:39:49 UTC
svn commit: r330589 - in /portals/jetspeed-2/trunk:
components/page-manager/src/java/JETSPEED-INF/castor/
components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/
components/page-manager/src/java/org/apache/jetspeed/om/page/
components/page...
Author: weaver
Date: Thu Nov 3 09:39:17 2005
New Revision: 330589
URL: http://svn.apache.org/viewcvs?rev=330589&view=rev
Log:
JS2-383: Supporting psml level preference settings.
http://issues.apache.org/jira/browse/JS2-383
Added:
portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml (with props)
portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java (with props)
portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java (with props)
portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java (with props)
portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java (with props)
Modified:
portals/jetspeed-2/trunk/components/page-manager/src/java/JETSPEED-INF/castor/page-mapping.xml
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/FolderImpl.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/ContentFragmentImpl.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/FragmentImpl.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/psml/FragmentImpl.java
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletAggregatorFragmentImpl.java
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletRendererImpl.java
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/RenderingJobImpl.java
portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/pipeline/valve/impl/ActionValveImpl.java
portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityImpl.java
portals/jetspeed-2/trunk/jetspeed-api/src/java/org/apache/jetspeed/om/page/Fragment.java
portals/jetspeed-2/trunk/xdocs/psml.xml
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/JETSPEED-INF/castor/page-mapping.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/JETSPEED-INF/castor/page-mapping.xml?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/JETSPEED-INF/castor/page-mapping.xml (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/JETSPEED-INF/castor/page-mapping.xml Thu Nov 3 09:39:17 2005
@@ -34,13 +34,13 @@
<bind-xml name="fragment"/>
</field>
- <field name="metadataFields"
+ <field name="metadataFields"
type="org.apache.jetspeed.om.page.PageLocalizedFieldImpl"
collection="collection">
<bind-xml name="metadata"/>
</field>
- <field name="menuDefinitions"
+ <field name="menuDefinitions"
type="org.apache.jetspeed.om.folder.psml.MenuDefinitionImpl"
collection="collection">
<bind-xml name="menu"/>
@@ -50,7 +50,7 @@
<class name="org.apache.jetspeed.om.page.PageLocalizedFieldImpl">
<map-to xml="metadata"/>
- <field name="name" type="java.lang.String">
+ <field name="name" type="java.lang.String">
<bind-xml name="name" node="attribute"/>
</field>
@@ -113,6 +113,11 @@
type="org.apache.jetspeed.om.page.psml.PropertyImpl" collection="vector">
<bind-xml name="property"/>
</field>
+
+ <field name="preferences"
+ type="org.apache.jetspeed.om.preference.impl.FragmentPreference" collection="arraylist">
+ <bind-xml name="preference"/>
+ </field>
</class>
<class name="org.apache.jetspeed.om.page.psml.LinkImpl">
@@ -143,7 +148,7 @@
<bind-xml name="short-title"/>
</field>
- <field name="metadataFields"
+ <field name="metadataFields"
type="org.apache.jetspeed.om.page.PageLocalizedFieldImpl"
collection="collection">
<bind-xml name="metadata"/>
@@ -180,13 +185,13 @@
<bind-xml name="document-order"/>
</field>
- <field name="metadataFields"
+ <field name="metadataFields"
type="org.apache.jetspeed.om.page.PageLocalizedFieldImpl"
collection="collection">
<bind-xml name="metadata"/>
</field>
- <field name="menuDefinitions"
+ <field name="menuDefinitions"
type="org.apache.jetspeed.om.folder.psml.MenuDefinitionImpl"
collection="collection">
<bind-xml name="menu"/>
@@ -236,13 +241,13 @@
<bind-xml name="short-title"/>
</field>
- <field name="metadataFields"
+ <field name="metadataFields"
type="org.apache.jetspeed.om.page.PageLocalizedFieldImpl"
collection="collection">
<bind-xml name="metadata"/>
</field>
- <field name="menuElementImpls"
+ <field name="menuElementImpls"
type="org.apache.jetspeed.om.folder.psml.MenuElementImpl"
collection="collection">
<bind-xml name="menu-element"/>
@@ -329,7 +334,7 @@
<bind-xml node="text"/>
</field>
- <field name="metadataFields"
+ <field name="metadataFields"
type="org.apache.jetspeed.om.page.PageLocalizedFieldImpl"
collection="collection">
<bind-xml name="metadata"/>
@@ -391,7 +396,7 @@
<class name="org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl">
<map-to xml="security-constraints"/>
- <field name="owner" type="java.lang.String">
+ <field name="owner" type="java.lang.String">
<bind-xml name="owner"/>
</field>
@@ -411,15 +416,15 @@
<class name="org.apache.jetspeed.om.page.psml.SecurityConstraintImpl">
<map-to xml="security-constraint"/>
- <field name="users" type="java.lang.String">
+ <field name="users" type="java.lang.String">
<bind-xml name="users"/>
</field>
- <field name="roles" type="java.lang.String">
+ <field name="roles" type="java.lang.String">
<bind-xml name="roles"/>
</field>
- <field name="groups" type="java.lang.String">
+ <field name="groups" type="java.lang.String">
<bind-xml name="groups"/>
</field>
@@ -447,7 +452,7 @@
<class name="org.apache.jetspeed.om.page.psml.SecurityConstraintsDefImpl">
<map-to xml="security-constraints-def"/>
- <field name="name" type="java.lang.String">
+ <field name="name" type="java.lang.String">
<bind-xml name="name" node="attribute"/>
</field>
@@ -455,6 +460,25 @@
type="org.apache.jetspeed.om.page.psml.SecurityConstraintImpl"
collection="collection">
<bind-xml name="security-constraint"/>
+ </field>
+ </class>
+
+
+ <class name="org.apache.jetspeed.om.preference.impl.FragmentPreference">
+ <map-to xml="preference"/>
+
+ <field name="name" type="string">
+ <bind-xml name="name" node="attribute"/>
+ </field>
+
+ <field name="readOnly" type="boolean">
+ <bind-xml name="readOnly" node="attribute"/>
+ </field>
+
+ <field name="valueList"
+ type="java.lang.String"
+ collection="arraylist" >
+ <bind-xml name="value" node="element" />
</field>
</class>
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/FolderImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/FolderImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/FolderImpl.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/folder/impl/FolderImpl.java Thu Nov 3 09:39:17 2005
@@ -142,7 +142,7 @@
pageMetadata.setFields(fields);
return pageMetadata;
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.folder.Folder#isRootFolder()
*/
@@ -157,7 +157,7 @@
*/
public List getDocumentOrder()
{
- return null; //NYI
+ return null; // NYI
}
/* (non-Javadoc)
@@ -340,5 +340,5 @@
public String getType()
{
return FOLDER_TYPE;
- }
+}
}
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/ContentFragmentImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/ContentFragmentImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/ContentFragmentImpl.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/ContentFragmentImpl.java Thu Nov 3 09:39:17 2005
@@ -148,7 +148,7 @@
*/
public Map getProperties()
{
-
+
return fragment.getProperties();
}
@@ -663,6 +663,12 @@
+ }
+
+
+ public List getPreferences()
+ {
+ return fragment.getPreferences();
}
}
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/FragmentImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/FragmentImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/FragmentImpl.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/impl/FragmentImpl.java Thu Nov 3 09:39:17 2005
@@ -134,10 +134,10 @@
if (properties != null)
{
return (String)properties.get(propName);
- }
+ }
return null;
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getProperty(java.lang.String,java.lang.String)
*/
@@ -149,11 +149,11 @@
if (propValue != null)
{
return Integer.parseInt(propValue);
- }
+ }
}
return -1;
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getProperties()
*/
@@ -163,7 +163,7 @@
if (properties == null)
{
properties = new HashMap(4);
- }
+ }
return properties;
}
@@ -175,7 +175,7 @@
// get standard int property
return getIntProperty(ROW_PROPERTY_NAME);
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#setLayoutRow(int)
*/
@@ -185,13 +185,13 @@
if (row >= 0)
{
getProperties().put(ROW_PROPERTY_NAME, String.valueOf(row));
- }
+ }
else if (properties != null)
{
properties.remove(ROW_PROPERTY_NAME);
}
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getLayoutColumn()
*/
@@ -210,13 +210,13 @@
if (column >= 0)
{
getProperties().put(COLUMN_PROPERTY_NAME, String.valueOf(column));
- }
+ }
else if (properties != null)
{
properties.remove(COLUMN_PROPERTY_NAME);
}
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getLayoutSizes()
*/
@@ -225,7 +225,7 @@
// get standard string property
return getProperty(SIZES_PROPERTY_NAME);
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#setLayoutSizes(java.lang.String)
*/
@@ -235,7 +235,7 @@
if (sizes != null)
{
getProperties().put(SIZES_PROPERTY_NAME, sizes);
- }
+ }
else if (properties != null)
{
properties.remove(SIZES_PROPERTY_NAME);
@@ -249,14 +249,14 @@
{
return false; // NYI
}
-
+
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#clone()
*/
public Object clone() throws CloneNotSupportedException
{
return null; // NYI
- }
+ }
/* (non-Javadoc)
* @see org.apache.ojb.broker.PersistenceBrokerAware#beforeInsert(org.apache.ojb.broker.PersistenceBroker)
@@ -275,7 +275,7 @@
// execute update hook
afterUpdate(broker);
}
-
+
/* (non-Javadoc)
* @see org.apache.ojb.broker.PersistenceBrokerAware#beforeUpdate(org.apache.ojb.broker.PersistenceBroker)
*/
@@ -302,7 +302,7 @@
if (propName.equals(ROW_PROPERTY_NAME))
{
layoutRowProperty = Integer.parseInt(propValue);
- }
+ }
else if (propName.equals(COLUMN_PROPERTY_NAME))
{
layoutColumnProperty = Integer.parseInt(propValue);
@@ -333,7 +333,13 @@
{
// nothing to do by default
}
-
+
+ public List getPreferences()
+ {
+ // TODO This needs to be implemented in the DB version
+ throw new UnsupportedOperationException("Not Yet Implemented"); // NYI
+ }
+
/* (non-Javadoc)
* @see org.apache.ojb.broker.PersistenceBrokerAware#beforeDelete(org.apache.ojb.broker.PersistenceBroker)
*/
@@ -341,6 +347,7 @@
{
// nothing to do by default
}
+
/* (non-Javadoc)
* @see org.apache.ojb.broker.PersistenceBrokerAware#afterDelete(org.apache.ojb.broker.PersistenceBroker)
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/psml/FragmentImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/psml/FragmentImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/psml/FragmentImpl.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/om/page/psml/FragmentImpl.java Thu Nov 3 09:39:17 2005
@@ -44,7 +44,9 @@
private List fragments = new Vector();
private List propertiesList = new Vector();
-
+
+ private List preferences = new ArrayList();
+
private Map propertiesMap = new HashMap();
private String name;
@@ -108,7 +110,7 @@
public Vector getPropertiesList()
{
return (Vector) this.propertiesList;
- }
+ }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getProperty(java.lang.String,java.lang.String)
@@ -116,20 +118,20 @@
public String getProperty(String propName)
{
return (String)propertiesMap.get(propName);
- }
+ }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getProperty(java.lang.String,java.lang.String)
*/
public int getIntProperty(String propName)
- {
+ {
String prop = (String)propertiesMap.get(propName);
if (prop != null)
- {
+ {
return Integer.parseInt(prop);
- }
+ }
return -1;
- }
+ }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getProperties()
@@ -137,7 +139,7 @@
public Map getProperties()
{
return propertiesMap;
- }
+ }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getLayoutRow()
@@ -148,7 +150,7 @@
if (prop != null)
{
return Integer.parseInt(prop);
- }
+ }
return -1;
}
@@ -162,10 +164,10 @@
propertiesMap.put(ROW_PROPERTY_NAME, String.valueOf(row));
}
else
- {
+ {
propertiesMap.remove(ROW_PROPERTY_NAME);
+ }
}
- }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getLayoutColumn()
@@ -176,7 +178,7 @@
if (prop != null)
{
return Integer.parseInt(prop);
- }
+ }
return -1;
}
@@ -190,10 +192,10 @@
propertiesMap.put(COLUMN_PROPERTY_NAME, String.valueOf(column));
}
else
- {
+ {
propertiesMap.remove(COLUMN_PROPERTY_NAME);
+ }
}
- }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#getLayoutSizes()
@@ -201,7 +203,7 @@
public String getLayoutSizes()
{
return (String)propertiesMap.get(SIZES_PROPERTY_NAME);
- }
+ }
/* (non-Javadoc)
* @see org.apache.jetspeed.om.page.Fragment#setLayoutSizes(java.lang.String)
@@ -213,10 +215,10 @@
propertiesMap.put(SIZES_PROPERTY_NAME, sizes);
}
else
- {
+ {
propertiesMap.remove(SIZES_PROPERTY_NAME);
+ }
}
- }
public Object clone() throws java.lang.CloneNotSupportedException
{
@@ -298,7 +300,17 @@
}
- /**
+ public List getPreferences()
+ {
+ return preferences;
+ }
+
+ public void setPreferences(List preferences)
+ {
+ this.preferences = preferences;
+ }
+
+ /**
* unmarshalled - notification that this instance has been
* loaded from the persistent store
*/
@@ -368,4 +380,4 @@
// notify super class implementation
super.marshalling();
}
-}
+}
\ No newline at end of file
Added: portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml?rev=330589&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml (added)
+++ portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml Thu Nov 3 09:39:17 2005
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<fragment id="test" type="portlet" name="demo::BookmarkPortlet">
+ <property name="row" value="2" layout="TwoColumns"/>
+ <property name="column" value="1" layout="TwoColumns"/>
+ <preference name="Google" readOnly="false">
+ <value>http://www.google.com</value>
+ </preference>
+</fragment>
\ No newline at end of file
Propchange: portals/jetspeed-2/trunk/components/page-manager/src/test/fragment-test.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java?rev=330589&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java (added)
+++ portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java Thu Nov 3 09:39:17 2005
@@ -0,0 +1,40 @@
+package org.apache.jetspeed.page;
+
+import java.util.Iterator;
+
+import junit.framework.TestCase;
+
+import org.apache.jetspeed.om.page.Fragment;
+import org.apache.pluto.om.common.Preference;
+import org.exolab.castor.mapping.Mapping;
+import org.exolab.castor.xml.Unmarshaller;
+import org.xml.sax.InputSource;
+
+public class TestMappings extends TestCase
+{
+
+ public void testFragmentMapping() throws Exception
+ {
+ Mapping mapping = new Mapping();
+
+ // 1. Load the mapping information from the file
+ mapping.loadMapping(new InputSource(getClass().getClassLoader().getResourceAsStream(
+ "JETSPEED-INF/castor/page-mapping.xml")));
+
+ // 2. Unmarshal the data
+ Unmarshaller unmar = new Unmarshaller(mapping);
+ Fragment fragment = (Fragment) unmar.unmarshal(new InputSource(getClass().getClassLoader().getResourceAsStream(
+ "fragment-test.xml")));
+
+ assertNotNull(fragment);
+ assertEquals(1, fragment.getPreferences().size());
+ Preference pref = (Preference) fragment.getPreferences().get(0);
+
+ assertEquals("Google", pref.getName());
+ assertEquals(false, pref.isReadOnly());
+ Iterator itr = pref.getValues();
+ String value = (String )itr.next();
+ assertEquals("http://www.google.com", value );
+
+ }
+}
Propchange: portals/jetspeed-2/trunk/components/page-manager/src/test/org/apache/jetspeed/page/TestMappings.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletAggregatorFragmentImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletAggregatorFragmentImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletAggregatorFragmentImpl.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletAggregatorFragmentImpl.java Thu Nov 3 09:39:17 2005
@@ -302,5 +302,11 @@
public Object clone() throws CloneNotSupportedException
{
return null;
+ }
+
+ public List getPreferences()
+ {
+ // TODO Auto-generated method stub
+ return null;
}
}
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletRendererImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletRendererImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletRendererImpl.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/PortletRendererImpl.java Thu Nov 3 09:39:17 2005
@@ -32,6 +32,7 @@
import org.apache.jetspeed.components.portletentity.PortletEntityNotStoredException;
import org.apache.jetspeed.container.window.FailedToRetrievePortletWindow;
import org.apache.jetspeed.container.window.PortletWindowAccessor;
+import org.apache.jetspeed.om.common.portlet.MutablePortletEntity;
import org.apache.jetspeed.om.page.ContentFragment;
import org.apache.jetspeed.request.RequestContext;
import org.apache.jetspeed.util.JetspeedObjectID;
@@ -217,7 +218,7 @@
+ fragment.getId() + ", " + fragment.getName());
}
PortletEntity portletEntity = portletWindow.getPortletEntity();
-
+ ((MutablePortletEntity)portletEntity).setFragment(fragment);
return portletWindow;
}
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/RenderingJobImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/RenderingJobImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/RenderingJobImpl.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/aggregator/impl/RenderingJobImpl.java Thu Nov 3 09:39:17 2005
@@ -24,6 +24,7 @@
import org.apache.jetspeed.PortalReservedParameters;
import org.apache.jetspeed.aggregator.PortletContent;
import org.apache.jetspeed.aggregator.RenderingJob;
+import org.apache.jetspeed.om.common.portlet.MutablePortletEntity;
import org.apache.jetspeed.om.page.ContentFragment;
import org.apache.jetspeed.request.RequestContext;
import org.apache.pluto.PortletContainer;
@@ -62,7 +63,8 @@
this.response = response;
this.requestContext = requestContext;
this.window = window;
- this.portletContent = portletContent;
+ this.portletContent = portletContent;
+ ((MutablePortletEntity)window.getPortletEntity()).setFragment(fragment);
}
Modified: portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/pipeline/valve/impl/ActionValveImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/pipeline/valve/impl/ActionValveImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/pipeline/valve/impl/ActionValveImpl.java (original)
+++ portals/jetspeed-2/trunk/components/portal/src/java/org/apache/jetspeed/pipeline/valve/impl/ActionValveImpl.java Thu Nov 3 09:39:17 2005
@@ -24,6 +24,9 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.jetspeed.PortalReservedParameters;
+import org.apache.jetspeed.om.common.portlet.MutablePortletEntity;
+import org.apache.jetspeed.om.page.Fragment;
+import org.apache.jetspeed.om.page.Page;
import org.apache.jetspeed.pipeline.PipelineException;
import org.apache.jetspeed.pipeline.valve.AbstractValve;
import org.apache.jetspeed.pipeline.valve.ActionValve;
@@ -69,6 +72,7 @@
PortletWindow actionWindow = request.getActionWindow();
if (actionWindow != null)
{
+ initWindow(actionWindow, request);
HttpServletResponse response = request.getResponseForWindow(actionWindow);
HttpServletRequest requestForWindow = request.getRequestForWindow(actionWindow);
requestForWindow.setAttribute(PortalReservedParameters.REQUEST_CONTEXT_ATTRIBUTE, request);
@@ -127,6 +131,19 @@
{
// TODO Auto-generated method stub
return "ActionValveImpl";
+ }
+
+ /**
+ * Makes sure that this PortletWindow's PortletEntity is set to have the
+ * current requests fragment.
+ * @param window
+ * @param request
+ */
+ protected void initWindow(PortletWindow window, RequestContext request)
+ {
+ Page page = request.getPage();
+ Fragment fragment = page.getFragmentById(window.getId().toString());
+ ((MutablePortletEntity)window.getPortletEntity()).setFragment(fragment);
}
}
Modified: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityImpl.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityImpl.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityImpl.java (original)
+++ portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityImpl.java Thu Nov 3 09:39:17 2005
@@ -38,6 +38,7 @@
import org.apache.jetspeed.om.common.portlet.PrincipalAware;
import org.apache.jetspeed.om.common.preference.PreferenceSetComposite;
import org.apache.jetspeed.om.page.Fragment;
+import org.apache.jetspeed.om.portlet.impl.FragmentPortletDefinition;
import org.apache.jetspeed.om.preference.impl.PrefsPreference;
import org.apache.jetspeed.om.preference.impl.PrefsPreferenceSetImpl;
import org.apache.jetspeed.om.window.impl.PortletWindowListImpl;
@@ -99,7 +100,7 @@
public PortletEntityImpl(Fragment fragment)
{
- this.fragment = fragment;
+ setFragment(fragment);
}
public PortletEntityImpl()
@@ -212,8 +213,10 @@
if(this.portletDefinition == null)
{
setPortletDefinition(registry.getPortletDefinitionByIdentifier(getPortletUniqueName()));
- }
- return this.portletDefinition;
+ }
+
+ // Wrap the portlet defintion every request
+ return new FragmentPortletDefinition(this.portletDefinition, fragment);
}
public PortletApplicationEntity getPortletApplicationEntity()
Added: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java?rev=330589&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java (added)
+++ portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java Thu Nov 3 09:39:17 2005
@@ -0,0 +1,341 @@
+/*
+ * Copyright 2000-2001,2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.jetspeed.om.portlet.impl;
+
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Locale;
+
+import org.apache.jetspeed.om.common.GenericMetadata;
+import org.apache.jetspeed.om.common.ParameterComposite;
+import org.apache.jetspeed.om.common.portlet.PortletDefinitionComposite;
+import org.apache.jetspeed.om.common.preference.PreferenceComposite;
+import org.apache.jetspeed.om.common.preference.PreferenceSetComposite;
+import org.apache.jetspeed.om.page.Fragment;
+import org.apache.jetspeed.om.preference.impl.FragmentPortletPreferenceSet;
+import org.apache.pluto.om.common.Description;
+import org.apache.pluto.om.common.DescriptionSet;
+import org.apache.pluto.om.common.DisplayName;
+import org.apache.pluto.om.common.DisplayNameSet;
+import org.apache.pluto.om.common.Language;
+import org.apache.pluto.om.common.LanguageSet;
+import org.apache.pluto.om.common.ObjectID;
+import org.apache.pluto.om.common.ParameterSet;
+import org.apache.pluto.om.common.Preference;
+import org.apache.pluto.om.common.PreferenceSet;
+import org.apache.pluto.om.common.SecurityRoleRef;
+import org.apache.pluto.om.common.SecurityRoleRefSet;
+import org.apache.pluto.om.portlet.ContentType;
+import org.apache.pluto.om.portlet.ContentTypeSet;
+import org.apache.pluto.om.portlet.PortletApplicationDefinition;
+import org.apache.pluto.om.servlet.ServletDefinition;
+
+/**
+ * Per-request wrapper for a PortletDefinition that allows for
+ * the supplementaton of psml-based portlet Preferences.
+ * The Preferences are transparently accessed as default Preferences in
+ * the exact same way default Preferences that are provided via the portelt.xml
+ * are.
+ *
+ * @author <href a="mailto:weaver@apache.org">Scott T. Weaver</a>
+ *
+ */
+public class FragmentPortletDefinition implements PortletDefinitionComposite
+{
+ private final PortletDefinitionComposite portletDefinition;
+ private final Fragment fragment;
+
+ public FragmentPortletDefinition(PortletDefinitionComposite portletDefinition, Fragment fragment)
+ {
+ this.portletDefinition = portletDefinition;
+ this.fragment = fragment;
+ }
+
+ public void addContentType(ContentType cType)
+ {
+ portletDefinition.addContentType(cType);
+ }
+
+ public void addContentType(String contentType, Collection modes)
+ {
+ portletDefinition.addContentType(contentType, modes);
+ }
+
+ public void addDescription(Locale locale, String description)
+ {
+ portletDefinition.addDescription(locale, description);
+ }
+
+ public void addDisplayName(DisplayName displayName)
+ {
+ portletDefinition.addDisplayName(displayName);
+ }
+
+ public void addDisplayName(Locale locale, String displayName)
+ {
+ portletDefinition.addDisplayName(locale, displayName);
+ }
+
+ public ParameterComposite addInitParameter(String name, String value, DescriptionSet description)
+ {
+ return portletDefinition.addInitParameter(name, value, description);
+ }
+
+ public ParameterComposite addInitParameter(String name, String value, String description, Locale locale)
+ {
+ return portletDefinition.addInitParameter(name, value, description, locale);
+ }
+
+ public ParameterComposite addInitParameter(String name, String value)
+ {
+ return portletDefinition.addInitParameter(name, value);
+ }
+
+ public void addLanguage(Language lang)
+ {
+ portletDefinition.addLanguage(lang);
+ }
+
+ public void addLanguage(String title, String shortTitle, String keywords, Locale locale)
+ {
+ portletDefinition.addLanguage(title, shortTitle, keywords, locale);
+ }
+
+ public void addPreference(Preference preference)
+ {
+ portletDefinition.addPreference(preference);
+ }
+
+ public PreferenceComposite addPreference(String name, String[] values)
+ {
+ return portletDefinition.addPreference(name, values);
+ }
+
+ public void addSecurityRoleRef(SecurityRoleRef securityRef)
+ {
+ portletDefinition.addSecurityRoleRef(securityRef);
+ }
+
+ public SecurityRoleRef addSecurityRoleRef(String roleName, String roleLink)
+ {
+ return portletDefinition.addSecurityRoleRef(roleName, roleLink);
+ }
+
+ public String getClassName()
+ {
+ return portletDefinition.getClassName();
+ }
+
+ public ContentTypeSet getContentTypeSet()
+ {
+ return portletDefinition.getContentTypeSet();
+ }
+
+ public Description getDescription(Locale arg0)
+ {
+ return portletDefinition.getDescription(arg0);
+ }
+
+ public DescriptionSet getDescriptionSet()
+ {
+ return portletDefinition.getDescriptionSet();
+ }
+
+ public String getDescriptionText(Locale locale)
+ {
+ return portletDefinition.getDescriptionText(locale);
+ }
+
+ public DisplayName getDisplayName(Locale arg0)
+ {
+ return portletDefinition.getDisplayName(arg0);
+ }
+
+ public DisplayNameSet getDisplayNameSet()
+ {
+ return portletDefinition.getDisplayNameSet();
+ }
+
+ public String getDisplayNameText(Locale locale)
+ {
+ return portletDefinition.getDisplayNameText(locale);
+ }
+
+ public String getExpirationCache()
+ {
+ return portletDefinition.getExpirationCache();
+ }
+
+ public ObjectID getId()
+ {
+ return portletDefinition.getId();
+ }
+
+ public ParameterSet getInitParameterSet()
+ {
+ return portletDefinition.getInitParameterSet();
+ }
+
+ public SecurityRoleRefSet getInitSecurityRoleRefSet()
+ {
+ return portletDefinition.getInitSecurityRoleRefSet();
+ }
+
+ public LanguageSet getLanguageSet()
+ {
+ return portletDefinition.getLanguageSet();
+ }
+
+ public GenericMetadata getMetadata()
+ {
+ return portletDefinition.getMetadata();
+ }
+
+ public String getName()
+ {
+ return portletDefinition.getName();
+ }
+
+ public PortletApplicationDefinition getPortletApplicationDefinition()
+ {
+ return portletDefinition.getPortletApplicationDefinition();
+ }
+
+ public ClassLoader getPortletClassLoader()
+ {
+ return portletDefinition.getPortletClassLoader();
+ }
+
+ public String getPortletIdentifier()
+ {
+ return portletDefinition.getPortletIdentifier();
+ }
+
+ public PreferenceSet getPreferenceSet()
+ {
+ return new FragmentPortletPreferenceSet((PreferenceSetComposite) portletDefinition.getPreferenceSet(), fragment);
+ }
+
+ public String getPreferenceValidatorClassname()
+ {
+ return portletDefinition.getPreferenceValidatorClassname();
+ }
+
+ public String getResourceBundle()
+ {
+ return portletDefinition.getResourceBundle();
+ }
+
+ public ServletDefinition getServletDefinition()
+ {
+ return portletDefinition.getServletDefinition();
+ }
+
+ public Collection getSupportedLocales()
+ {
+ return portletDefinition.getSupportedLocales();
+ }
+
+ public String getUniqueName()
+ {
+ return portletDefinition.getUniqueName();
+ }
+
+ public void setClassName(String arg0)
+ {
+ portletDefinition.setClassName(arg0);
+ }
+
+ public void setContentTypeSet(ContentTypeSet contentTypes)
+ {
+ portletDefinition.setContentTypeSet(contentTypes);
+ }
+
+ public void setDescriptions(DescriptionSet arg0)
+ {
+ portletDefinition.setDescriptions(arg0);
+ }
+
+ public void setDisplayNames(DisplayNameSet arg0)
+ {
+ portletDefinition.setDisplayNames(arg0);
+ }
+
+ public void setExpirationCache(String cache)
+ {
+ portletDefinition.setExpirationCache(cache);
+ }
+
+ public void setId(String arg0)
+ {
+ portletDefinition.setId(arg0);
+ }
+
+ public void setInitParameterSet(ParameterSet parameters)
+ {
+ portletDefinition.setInitParameterSet(parameters);
+ }
+
+ public void setInitSecurityRoleRefSet(SecurityRoleRefSet securityRefs)
+ {
+ portletDefinition.setInitSecurityRoleRefSet(securityRefs);
+ }
+
+ public void setLanguageSet(LanguageSet languages)
+ {
+ portletDefinition.setLanguageSet(languages);
+ }
+
+ public void setMetadata(GenericMetadata metadata)
+ {
+ portletDefinition.setMetadata(metadata);
+ }
+
+ public void setName(String arg0)
+ {
+ portletDefinition.setName(arg0);
+ }
+
+ public void setPortletApplicationDefinition(PortletApplicationDefinition pad)
+ {
+ portletDefinition.setPortletApplicationDefinition(pad);
+ }
+
+ public void setPortletClassLoader(ClassLoader arg0)
+ {
+ portletDefinition.setPortletClassLoader(arg0);
+ }
+
+ public void setPortletIdentifier(String portletIndentifier)
+ {
+ portletDefinition.setPortletIdentifier(portletIndentifier);
+ }
+
+ public void setPreferenceSet(PreferenceSet preferences)
+ {
+ portletDefinition.setPreferenceSet(preferences);
+ }
+
+ public void setPreferenceValidatorClassname(String classname)
+ {
+ portletDefinition.setPreferenceValidatorClassname(classname);
+ }
+
+ public void store() throws IOException
+ {
+ portletDefinition.store();
+ }
+}
Propchange: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/portlet/impl/FragmentPortletDefinition.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java?rev=330589&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java (added)
+++ portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java Thu Nov 3 09:39:17 2005
@@ -0,0 +1,115 @@
+/*
+ * Copyright 2000-2001,2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.jetspeed.om.preference.impl;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.portlet.PreferencesValidator;
+
+import org.apache.jetspeed.om.common.preference.PreferenceSetComposite;
+import org.apache.jetspeed.om.page.Fragment;
+import org.apache.pluto.om.common.Preference;
+
+/**
+ * This is a per-request wrapper for a PreferenceSet that allows
+ * the use of fragment-specified Preferences within a portlet instance
+ * in a page.
+ *
+ * @author <href a="mailto:weaver@apache.org">Scott T. Weaver</a>
+ *
+ */
+public class FragmentPortletPreferenceSet implements PreferenceSetComposite
+{
+ private final PreferenceSetComposite preferenceSet;
+ private final Fragment fragment;
+ private final Map prefs;
+
+ public FragmentPortletPreferenceSet(PreferenceSetComposite preferenceSet, Fragment fragment)
+ {
+ this.preferenceSet = preferenceSet;
+ this.fragment = fragment;
+ this.prefs = new HashMap(fragment.getPreferences().size());
+ Iterator itr = fragment.getPreferences().iterator();
+
+ while(itr.hasNext())
+ {
+ Preference pref = (Preference) itr.next();
+ prefs.put(pref.getName(), pref);
+ }
+
+
+ itr = preferenceSet.iterator();
+ while(itr.hasNext())
+ {
+ Preference pref = (Preference) itr.next();
+ prefs.put(pref.getName(), pref);
+ }
+ }
+
+ public Preference add(String arg0, List arg1)
+ {
+ Preference pref = preferenceSet.add(arg0, arg1);
+ prefs.put(arg0, pref);
+ return pref;
+ }
+
+ public Preference get(String name)
+ {
+ return (Preference) prefs.get(name);
+ }
+
+ public Set getNames()
+ {
+ return prefs.keySet();
+ }
+
+ public PreferencesValidator getPreferencesValidator()
+ {
+ return preferenceSet.getPreferencesValidator();
+ }
+
+ public Iterator iterator()
+ {
+ return prefs.values().iterator();
+ }
+
+ public void remove(Preference pref)
+ {
+ prefs.remove(pref.getName());
+ preferenceSet.remove(pref);
+ }
+
+ public Preference remove(String name)
+ {
+ Preference pref = (Preference) prefs.remove(name);
+ preferenceSet.remove(name);
+ return pref;
+ }
+
+ public void setPreferenceValidator(PreferencesValidator validator)
+ {
+ preferenceSet.setPreferenceValidator(validator);
+ }
+
+ public int size()
+ {
+ return prefs.size();
+ }
+}
Propchange: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPortletPreferenceSet.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java?rev=330589&view=auto
==============================================================================
--- portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java (added)
+++ portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java Thu Nov 3 09:39:17 2005
@@ -0,0 +1,89 @@
+/*
+ * Copyright 2000-2001,2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package org.apache.jetspeed.om.preference.impl;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.pluto.om.common.Preference;
+import org.apache.pluto.om.common.PreferenceCtrl;
+
+/**
+ *
+ * Castor-friendly Preference implementation to be used with Fragment-based
+ * portlet Preferences.
+ *
+ * @author <href a="mailto:weaver@apache.org">Scott T. Weaver</a>
+ *
+ */
+public class FragmentPreference implements Preference, PreferenceCtrl
+{
+ private String name;
+ private List values;
+ private boolean readOnly;
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ public boolean isReadOnly()
+ {
+ return readOnly;
+ }
+
+ public void setReadOnly(boolean readOnly)
+ {
+ this.readOnly = readOnly;
+ }
+
+ public void setReadOnly(String arg0)
+ {
+ readOnly = new Boolean(arg0).booleanValue();
+ }
+
+ public Iterator getValues()
+ {
+ return getValueList().iterator();
+ }
+
+ public List getValueList()
+ {
+ return this.values;
+ }
+
+ public void setValues(List values)
+ {
+ this.values = values;
+ }
+
+ public void setValueList(List values)
+ {
+ setValues(values);
+ }
+
+ public boolean isValueSet()
+ {
+ return values != null && values.size() > 0;
+ }
+
+
+}
Propchange: portals/jetspeed-2/trunk/components/registry/src/java/org/apache/jetspeed/om/preference/impl/FragmentPreference.java
------------------------------------------------------------------------------
svn:eol-style = native
Modified: portals/jetspeed-2/trunk/jetspeed-api/src/java/org/apache/jetspeed/om/page/Fragment.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/jetspeed-api/src/java/org/apache/jetspeed/om/page/Fragment.java?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/jetspeed-api/src/java/org/apache/jetspeed/om/page/Fragment.java (original)
+++ portals/jetspeed-2/trunk/jetspeed-api/src/java/org/apache/jetspeed/om/page/Fragment.java Thu Nov 3 09:39:17 2005
@@ -163,7 +163,7 @@
/**
* getIntProperty
- *
+ *
* Get named property value as integer.
*
* @param propName property name
@@ -173,7 +173,7 @@
/**
* getProperties
- *
+ *
* Get writable Map of properties by name.
*
* @return properties map
@@ -186,14 +186,14 @@
* @return row layout property
**/
public int getLayoutRow();
-
+
/**
* set the layout row property
- *
+ *
* @param row
*/
public void setLayoutRow(int row);
-
+
/**
* get layout column property
*
@@ -210,11 +210,11 @@
/**
* get layout sizes property, (i.e. "25%,75%")
- *
+ *
* @return sizes layout property
**/
public String getLayoutSizes();
-
+
/**
* set the layout sizes
*
@@ -234,5 +234,11 @@
*/
public Object clone()
throws java.lang.CloneNotSupportedException;
+
+ /**
+ *
+ * @return
+ */
+ List getPreferences();
}
Modified: portals/jetspeed-2/trunk/xdocs/psml.xml
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/xdocs/psml.xml?rev=330589&r1=330588&r2=330589&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/xdocs/psml.xml (original)
+++ portals/jetspeed-2/trunk/xdocs/psml.xml Thu Nov 3 09:39:17 2005
@@ -25,11 +25,12 @@
<body>
<section name="PSML">
<ul>
- <li><a href="#Page">Page</a></li>
- <li><a href="#Defaults">Defaults</a></li>
+ <li><a href="#Page">Page</a></li>
+ <li><a href="#Defaults">Defaults</a></li>
<li><a href="#Title_and_Metadata">Title and Metadata</a></li>
<li><a href="#Layout_Fragments">Layout Fragments</a></li>
<li><a href="#Portlet_Fragments">Portlet Fragments</a></li>
+ <li><a href="#Preferences">Portlet Preferences</a></li>
<li><a href="#PSML_Security_Constraints">Security Constraints</a></li>
</ul>
@@ -51,10 +52,10 @@
/>
<title>Welcome to Jetspeed 2</title>
<metadata name="title" xml:lang="fr">
- Ma Premiere Page de PSML
+ Ma Premiere Page de PSML
</metadata>
<metadata name="title" xml:lang="ja">
- Jetspeed 2 ã¸ãããã
+ Jetspeed 2 ã¸ãããã
</metadata>
<fragment id="dp-1" type="layout" name="jetspeed::VelocityTwoColumns">
@@ -221,6 +222,49 @@
</table>
<p>Example:</p>
<source><![CDATA[
+
+]]></source>
+</section>
+
+<section name='Preferences'>
+<p>
+ The <preference> elements allows for the defining of portlet preferences.
+ This provides an eaiser avenue for the setting of default portlet prefences for a portlet
+ instance on a page without having to duplicate a portlet definition within
+ the portlet application's portlet.xml.
+ <br/><br/>
+ A fragment can contain 0..n <preference> elements.
+ <br/><br/>
+ Preference precedence: User Defined > Fragment Defined > portlet.xml Defined.
+</p>
+<table>
+ <tr>
+ <th>Attribute: name</th>
+ <th>Attribute: readOnly</th>
+ <th>Element: value</th>
+ </tr>
+ <tr>
+ <td>The name of the preference.</td>
+ <td>Whether or not the user can change the value of this preference.</td>
+ <td>There can be 1..n <i><value></i> elements assigned to a single preference.</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td></td>
+ <td></td>
+ </tr>
+</table>
+<p>Example:</p>
+<source><![CDATA[
+
+ <fragment id="uhtemp-1012" type="portlet" name="demo::BookmarkPortlet">
+ <property layout="TwoColumns" name="row" value="2" />
+ <property layout="TwoColumns" name="column" value="1" />
+ <preference name="Google" readOnly="false">
+ <value>http://www.google.com</value>
+ </preference>
+ </fragment>
+
]]></source>
</section>
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org