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 2009/03/05 01:21:26 UTC
svn commit: r750252 - in /portals/jetspeed-2/portal/trunk:
components/jetspeed-registry/src/main/java/JETSPEED-INF/ojb/
components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/
components/jetspeed-registry/src/test/java/org/apach...
Author: taylor
Date: Thu Mar 5 00:21:25 2009
New Revision: 750252
URL: http://svn.apache.org/viewvc?rev=750252&view=rev
Log:
https://issues.apache.org/jira/browse/JS2-927
Portlet 2.0 object model persistence for OJB. Modified to be more inline with JPA persistence
This commit completes 2.0 model persistence with filters, filter mappings, and listeners
Added:
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java (with props)
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java (with props)
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java (with props)
portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java (with props)
Modified:
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/FilterImpl.java
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterMappingImpl.java
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletApplicationDefinitionImpl.java
portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/test/java/org/apache/jetspeed/components/portletregistry/TestPortletRegistryDAO.java
portals/jetspeed-2/portal/trunk/jetspeed-portal-resources/src/main/ddl-schema/registry-schema.xml
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=750252&r1=750251&r2=750252&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 Thu Mar 5 00:21:25 2009
@@ -309,6 +309,36 @@
>
<inverse-foreignkey field-ref="ownerId"/>
</collection-descriptor>
+
+ <collection-descriptor
+ name="filters"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.FilterImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="applicationId"/>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="filterMappings"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.FilterMappingImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="applicationId"/>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="listeners"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.ListenerImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="applicationId"/>
+ </collection-descriptor>
</class-descriptor>
@@ -1766,5 +1796,276 @@
</collection-descriptor>
</class-descriptor>
+
+
+ <!--
+ - F I L T E R
+ -->
+ <class-descriptor
+ class="org.apache.jetspeed.om.portlet.impl.FilterImpl"
+ table="PORTLET_FILTER"
+ >
+
+ <field-descriptor
+ name="id"
+ column="ID"
+ jdbc-type="BIGINT"
+ primarykey="true"
+ autoincrement="true"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="applicationId"
+ column="APPLICATION_ID"
+ jdbc-type="BIGINT"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="filterName"
+ column="FILTER_NAME"
+ jdbc-type="VARCHAR"
+ />
+
+ <field-descriptor
+ name="filterClass"
+ column="FILTER_CLASS"
+ jdbc-type="VARCHAR"
+ />
+
+ <collection-descriptor
+ name="descriptions"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.DescriptionImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ <query-customizer class="org.apache.jetspeed.util.ojb.CollectionOwnerClassDiscriminatorQueryCustomizer">
+ <attribute
+ attribute-name="discriminatorField"
+ attribute-value="owner"
+ />
+ </query-customizer>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="displayNames"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.DisplayNameImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ <query-customizer class="org.apache.jetspeed.util.ojb.CollectionOwnerClassDiscriminatorQueryCustomizer">
+ <attribute
+ attribute-name="discriminatorField"
+ attribute-value="owner"
+ />
+ </query-customizer>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="initParams"
+ proxy="false"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.InitParamImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+
+ <inverse-foreignkey field-ref="ownerId"/>
+ <query-customizer class="org.apache.jetspeed.util.ojb.CollectionOwnerClassDiscriminatorQueryCustomizer">
+ <attribute
+ attribute-name="discriminatorField"
+ attribute-value="owner"
+ />
+ </query-customizer>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="lifecycles"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.FilterLifecycleImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ </collection-descriptor>
+
+ </class-descriptor>
+
+<!--
+ - P O R T L E T F I L T E R L I F E C Y C L E
+ -->
+ <class-descriptor
+ class="org.apache.jetspeed.om.portlet.impl.FilterLifecycleImpl"
+ table="FILTER_LIFECYCLE"
+ >
+
+ <field-descriptor
+ name="id"
+ column="ID"
+ jdbc-type="BIGINT"
+ primarykey="true"
+ autoincrement="true"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="ownerId"
+ column="OWNER_ID"
+ jdbc-type="BIGINT"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="name"
+ column="NAME"
+ jdbc-type="VARCHAR"
+ />
+
+ </class-descriptor>
+
+<!--
+ - P O R T L E T F I L T E R M A P P I N G
+ -->
+ <class-descriptor
+ class="org.apache.jetspeed.om.portlet.impl.FilterMappingImpl"
+ table="FILTER_MAPPING"
+ >
+
+ <field-descriptor
+ name="id"
+ column="ID"
+ jdbc-type="BIGINT"
+ primarykey="true"
+ autoincrement="true"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="applicationId"
+ column="APPLICATION_ID"
+ jdbc-type="BIGINT"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="filterName"
+ column="FILTER_NAME"
+ jdbc-type="VARCHAR"
+ />
+
+ <collection-descriptor
+ name="portletNames"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.FilteredPortletImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ </collection-descriptor>
+
+ </class-descriptor>
+
+<!--
+ - F I L T E R E D P O R T L E T
+ -->
+ <class-descriptor
+ class="org.apache.jetspeed.om.portlet.impl.FilteredPortletImpl"
+ table="FILTERED_PORTLET"
+ >
+
+ <field-descriptor
+ name="id"
+ column="ID"
+ jdbc-type="BIGINT"
+ primarykey="true"
+ autoincrement="true"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="ownerId"
+ column="OWNER_ID"
+ jdbc-type="BIGINT"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="name"
+ column="NAME"
+ jdbc-type="VARCHAR"
+ />
+
+ </class-descriptor>
+
+ <!--
+ - L I S T E N E R
+ -->
+ <class-descriptor
+ class="org.apache.jetspeed.om.portlet.impl.ListenerImpl"
+ table="PORTLET_LISTENER"
+ >
+
+ <field-descriptor
+ name="id"
+ column="ID"
+ jdbc-type="BIGINT"
+ primarykey="true"
+ autoincrement="true"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="applicationId"
+ column="APPLICATION_ID"
+ jdbc-type="BIGINT"
+ access="anonymous"
+ />
+
+ <field-descriptor
+ name="listenerClass"
+ column="LISTENER_CLASS"
+ jdbc-type="VARCHAR"
+ />
+
+ <collection-descriptor
+ name="descriptions"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.DescriptionImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ <query-customizer class="org.apache.jetspeed.util.ojb.CollectionOwnerClassDiscriminatorQueryCustomizer">
+ <attribute
+ attribute-name="discriminatorField"
+ attribute-value="owner"
+ />
+ </query-customizer>
+ </collection-descriptor>
+
+ <collection-descriptor
+ name="displayNames"
+ element-class-ref="org.apache.jetspeed.om.portlet.impl.DisplayNameImpl"
+ auto-delete="true"
+ auto-update = "true"
+ auto-retrieve = "true"
+ >
+ <inverse-foreignkey field-ref="ownerId"/>
+ <query-customizer class="org.apache.jetspeed.util.ojb.CollectionOwnerClassDiscriminatorQueryCustomizer">
+ <attribute
+ attribute-name="discriminatorField"
+ attribute-value="owner"
+ />
+ </query-customizer>
+ </collection-descriptor>
+
+ </class-descriptor>
</descriptor-repository>
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterImpl.java?rev=750252&r1=750251&r2=750252&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterImpl.java Thu Mar 5 00:21:25 2009
@@ -25,7 +25,9 @@
import org.apache.jetspeed.om.portlet.Description;
import org.apache.jetspeed.om.portlet.DisplayName;
import org.apache.jetspeed.om.portlet.Filter;
+import org.apache.jetspeed.om.portlet.FilterLifecycle;
import org.apache.jetspeed.om.portlet.InitParam;
+import org.apache.jetspeed.om.portlet.SupportedPublicRenderParameter;
import org.apache.jetspeed.util.JetspeedLocale;
/**
@@ -36,7 +38,7 @@
{
protected String filterName;
protected String filterClass;
- protected List<String> lifecycle;
+ protected List<FilterLifecycle> lifecycles;
protected List<InitParam> initParams;
protected List<Description> descriptions;
protected List<DisplayName> displayNames;
@@ -119,17 +121,32 @@
public List<String> getLifecycles()
{
- if (lifecycle == null)
+ if (lifecycles == null)
{
- lifecycle = new ArrayList<String>();
+ lifecycles = new ArrayList<FilterLifecycle>();
}
- return lifecycle;
+ List<String> result = new ArrayList<String>();
+ for (FilterLifecycle flc : lifecycles)
+ {
+ result.add(flc.toString());
+ }
+ return result;
}
public void addLifecycle(String name)
{
- // TODO: check valid name and duplicates
- getLifecycles().add(name);
+ if (lifecycles == null)
+ {
+ lifecycles = new ArrayList<FilterLifecycle>();
+ }
+ for (FilterLifecycle flc : this.lifecycles)
+ {
+ if (flc.equals(name))
+ {
+ throw new IllegalArgumentException("Support for filter lifecycle parameter with identifier: "+name+" already defined");
+ }
+ }
+ lifecycles.add(new FilterLifecycleImpl(name));
}
public InitParam getInitParam(String name)
Added: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java?rev=750252&view=auto
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java (added)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java Thu Mar 5 00:21:25 2009
@@ -0,0 +1,34 @@
+package org.apache.jetspeed.om.portlet.impl;
+
+import org.apache.jetspeed.om.portlet.FilterLifecycle;
+
+
+
+public class FilterLifecycleImpl implements FilterLifecycle
+{
+ private String name;
+
+ public FilterLifecycleImpl()
+ {}
+
+ public FilterLifecycleImpl(String name)
+ {
+ this.name = name;
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public boolean equals(Object qname)
+ {
+ return (this.toString().equals(qname.toString()));
+ }
+
+ public String toString()
+ {
+ return name;
+ }
+
+}
Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterLifecycleImpl.java
------------------------------------------------------------------------------
svn:keywords = Id
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterMappingImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterMappingImpl.java?rev=750252&r1=750251&r2=750252&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterMappingImpl.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilterMappingImpl.java Thu Mar 5 00:21:25 2009
@@ -22,6 +22,7 @@
import java.util.List;
import org.apache.jetspeed.om.portlet.FilterMapping;
+import org.apache.jetspeed.om.portlet.FilteredPortlet;
/**
* @version $Id$
@@ -30,7 +31,7 @@
public class FilterMappingImpl implements FilterMapping, Serializable
{
protected String filterName;
- protected List<String> portletName;
+ protected List<FilteredPortlet> portletNames;
public String getFilterName()
{
@@ -44,16 +45,31 @@
public List<String> getPortletNames()
{
- if (portletName == null)
+ if (portletNames == null)
{
- portletName = new ArrayList<String>();
+ portletNames = new ArrayList<FilteredPortlet>();
}
- return portletName;
+ List<String> result = new ArrayList<String>();
+ for (FilteredPortlet fp : portletNames)
+ {
+ result.add(fp.toString());
+ }
+ return result;
}
public void addPortletName(String name)
{
- // TODO: check for duplicates
- getPortletNames().add(name);
+ if (portletNames == null)
+ {
+ portletNames = new ArrayList<FilteredPortlet>();
+ }
+ for (FilteredPortlet fp : this.portletNames)
+ {
+ if (fp.equals(name))
+ {
+ throw new IllegalArgumentException("Support for filter-mapping portlet name parameter with identifier: "+name+" already defined");
+ }
+ }
+ portletNames.add(new FilteredPortletImpl(name));
}
}
Added: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java?rev=750252&view=auto
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java (added)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java Thu Mar 5 00:21:25 2009
@@ -0,0 +1,34 @@
+package org.apache.jetspeed.om.portlet.impl;
+
+import org.apache.jetspeed.om.portlet.FilteredPortlet;
+
+
+
+public class FilteredPortletImpl implements FilteredPortlet
+{
+ private String name;
+
+ public FilteredPortletImpl()
+ {}
+
+ public FilteredPortletImpl(String name)
+ {
+ this.name = name;
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public boolean equals(Object qname)
+ {
+ return (this.toString().equals(qname.toString()));
+ }
+
+ public String toString()
+ {
+ return name;
+ }
+
+}
Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/FilteredPortletImpl.java
------------------------------------------------------------------------------
svn:keywords = Id
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=750252&r1=750251&r2=750252&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 Thu Mar 5 00:21:25 2009
@@ -38,7 +38,6 @@
import org.apache.jetspeed.om.portlet.Description;
import org.apache.jetspeed.om.portlet.DisplayName;
import org.apache.jetspeed.om.portlet.EventDefinition;
-import org.apache.jetspeed.om.portlet.EventDefinitionReference;
import org.apache.jetspeed.om.portlet.Filter;
import org.apache.jetspeed.om.portlet.FilterMapping;
import org.apache.jetspeed.om.portlet.GenericMetadata;
@@ -719,7 +718,7 @@
{
for (Filter f : getFilters())
{
- if (f.getFilterName().equals(name))
+ if (f.getFilterName().equals(filterName))
{
return f;
}
@@ -738,12 +737,12 @@
public Filter addFilter(String filterName)
{
- if (getFilter(name) != null)
+ if (getFilter(filterName) != null)
{
throw new IllegalArgumentException("Filter with name: "+name+" already defined");
}
FilterImpl f = new FilterImpl();
- f.setFilterName(name);
+ f.setFilterName(filterName);
getFilters().add(f);
return f;
}
@@ -752,7 +751,7 @@
{
for (FilterMapping f : getFilterMappings())
{
- if (f.getFilterName().equals(name))
+ if (f.getFilterName().equals(filterName))
{
return f;
}
@@ -771,12 +770,12 @@
public FilterMapping addFilterMapping(String filterName)
{
- if (getFilterMapping(name) != null)
+ if (getFilterMapping(filterName) != null)
{
throw new IllegalArgumentException("Filtermapping for filter: "+name+" already defined");
}
FilterMappingImpl fm = new FilterMappingImpl();
- fm.setFilterName(name);
+ fm.setFilterName(filterName);
getFilterMappings().add(fm);
return fm;
}
Modified: portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/test/java/org/apache/jetspeed/components/portletregistry/TestPortletRegistryDAO.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/test/java/org/apache/jetspeed/components/portletregistry/TestPortletRegistryDAO.java?rev=750252&r1=750251&r2=750252&view=diff
==============================================================================
--- portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/test/java/org/apache/jetspeed/components/portletregistry/TestPortletRegistryDAO.java (original)
+++ portals/jetspeed-2/portal/trunk/components/jetspeed-registry/src/test/java/org/apache/jetspeed/components/portletregistry/TestPortletRegistryDAO.java Thu Mar 5 00:21:25 2009
@@ -29,12 +29,16 @@
import org.apache.jetspeed.engine.MockJetspeedEngine;
import org.apache.jetspeed.om.portlet.ContainerRuntimeOption;
import org.apache.jetspeed.om.portlet.Description;
+import org.apache.jetspeed.om.portlet.DisplayName;
import org.apache.jetspeed.om.portlet.DublinCore;
import org.apache.jetspeed.om.portlet.EventDefinition;
import org.apache.jetspeed.om.portlet.EventDefinitionReference;
+import org.apache.jetspeed.om.portlet.Filter;
+import org.apache.jetspeed.om.portlet.FilterMapping;
import org.apache.jetspeed.om.portlet.GenericMetadata;
import org.apache.jetspeed.om.portlet.InitParam;
import org.apache.jetspeed.om.portlet.Language;
+import org.apache.jetspeed.om.portlet.Listener;
import org.apache.jetspeed.om.portlet.PortletApplication;
import org.apache.jetspeed.om.portlet.PortletDefinition;
import org.apache.jetspeed.om.portlet.Preference;
@@ -380,7 +384,53 @@
d1.setDescription("dog");
Description d2 = prp1.addDescription("fr");
d2.setDescription("chien");
- prp1.addAlias(new QName("alias-1"));
+ prp1.addAlias(new QName("alias-1"));
+
+ Filter filter = app.addFilter("filter-1");
+ filter.setFilterClass("org.apache.filter.FilterOne");
+ Description d3 = filter.addDescription("en");
+ d3.setDescription("My Filter 1");
+ Description d4 = filter.addDescription("fr");
+ d4.setDescription("Mon Filtre 1");
+ DisplayName dn3 = filter.addDisplayName("en");
+ dn3.setDisplayName("This is my filter 1");
+ DisplayName dn4 = filter.addDisplayName("fr");
+ dn4.setDisplayName("Ceci est mon filtre 1");
+ InitParam ip3 = filter.addInitParam("filter init param 1");
+ ip3.setParamValue("value for filter init param 1");
+ InitParam ip4 = filter.addInitParam("filter init param 2");
+ ip4.setParamValue("value for filter init param 2");
+ filter.addLifecycle("lifecycle-1");
+ filter.addLifecycle("lifecycle-2");
+ filter.addLifecycle("lifecycle-3");
+
+ FilterMapping mapping1 = app.addFilterMapping("filter-1");
+ mapping1.addPortletName("Portlet 1");
+ mapping1.addPortletName("Portlet 2");
+ mapping1.addPortletName("Portlet 3");
+ FilterMapping mapping2 = app.addFilterMapping("filter-2");
+ mapping2.addPortletName("Portlet 1");
+ mapping2.addPortletName("Portlet 2");
+ mapping2.addPortletName("Portlet 3");
+
+ Listener listener1 = app.addListener("org.apache.listener.ListenerOne");
+ Description d5 = listener1.addDescription("en");
+ d5.setDescription("Listen to me once");
+ Description d6 = listener1.addDescription("fr");
+ d6.setDescription("coutez moi une fois");
+ DisplayName dn5 = listener1.addDisplayName("en");
+ dn5.setDisplayName("Listen to me twice");
+ DisplayName dn6 = listener1.addDisplayName("fr");
+ dn6.setDisplayName("coutez moi deux fois");
+ Listener listener2 = app.addListener("org.apache.listener.ListenerTwo");
+ Description d7 = listener2.addDescription("en");
+ d7.setDescription("Don't listen to me");
+ Description d8 = listener2.addDescription("fr");
+ d8.setDescription("N'coutez pas moi");
+ DisplayName dn7 = listener2.addDisplayName("en");
+ dn7.setDisplayName("Listen!");
+ DisplayName dn8 = listener2.addDisplayName("fr");
+ dn8.setDisplayName("coutez!");
}
public static void verifyPortlet20Data(PortletApplication app, PortletDefinition portlet)
@@ -494,6 +544,81 @@
List<QName> aliases = x.getAliases();
assertEquals(aliases.size(), 1);
assertEquals(aliases.get(0).getLocalPart(), "alias-1");
+
+ List<Filter> filters = app.getFilters();
+ assertEquals(filters.size(), 1);
+ Filter filter = filters.get(0);
+ assertEquals(filter.getFilterName(), "filter-1");
+ assertEquals(filter.getFilterClass(), "org.apache.filter.FilterOne");
+ List<Description> descs = filter.getDescriptions();
+ assertEquals(descs.size(), 2);
+ Description d3 = descs.get(0);
+ assertEquals(d3.getLang(), "en");
+ assertEquals(d3.getDescription(), "My Filter 1");
+ Description d4 = descs.get(1);
+ assertEquals(d4.getLang(), "fr");
+ assertEquals(d4.getDescription(), "Mon Filtre 1");
+ List<DisplayName> dnames = filter.getDisplayNames();
+ assertEquals(dnames.size(), 2);
+ DisplayName dn3 = dnames.get(0);
+ assertEquals(dn3.getLang(), "en");
+ assertEquals(dn3.getDisplayName(), "This is my filter 1");
+ DisplayName dn4 = dnames.get(1);
+ assertEquals(dn4.getLang(), "fr");
+ assertEquals(dn4.getDisplayName(), "Ceci est mon filtre 1");
+ List<InitParam> iparams = filter.getInitParams();
+ assertEquals(iparams.size(), 2);
+ InitParam ip3 = iparams.get(0);
+ assertEquals(ip3.getParamName(),"filter init param 1");
+ assertEquals(ip3.getParamValue(), "value for filter init param 1");
+ InitParam ip4 = iparams.get(1);
+ assertEquals(ip4.getParamName(), "filter init param 2");
+ assertEquals(ip4.getParamValue(), "value for filter init param 2");
+ List<String> lcycles = filter.getLifecycles();
+ assertEquals(lcycles.size(), 3);
+ assertEquals(lcycles.get(0), "lifecycle-1");
+ assertEquals(lcycles.get(1), "lifecycle-2");
+ assertEquals(lcycles.get(2), "lifecycle-3");
+
+ List<Listener> listeners = app.getListeners();
+ assertEquals(listeners.size(), 2);
+ Listener listener1 = listeners.get(0);
+ assertEquals(listener1.getListenerClass(), "org.apache.listener.ListenerOne");
+ descs = listener1.getDescriptions();
+ assertEquals(descs.size(), 2);
+ Description d5 = descs.get(0);
+ assertEquals(d5.getLang(), "en");
+ assertEquals(d5.getDescription(), "Listen to me once");
+ Description d6 = descs.get(1);
+ assertEquals(d6.getLang(), "fr");
+ assertEquals(d6.getDescription(), "coutez moi une fois");
+ dnames = listener1.getDisplayNames();
+ assertEquals(dnames.size(), 2);
+ DisplayName dn5 = dnames.get(0);
+ assertEquals(dn5.getLang(), "en");
+ assertEquals(dn5.getDisplayName(), "Listen to me twice");
+ DisplayName dn6 = dnames.get(1);
+ assertEquals(dn6.getLang(), "fr");
+ assertEquals(dn6.getDisplayName(), "coutez moi deux fois");
+
+ Listener listener2 = listeners.get(1);
+ assertEquals(listener2.getListenerClass(), "org.apache.listener.ListenerTwo");
+ descs = listener2.getDescriptions();
+ assertEquals(descs.size(), 2);
+ d5 = descs.get(0);
+ assertEquals(d5.getLang(), "en");
+ assertEquals(d5.getDescription(), "Don't listen to me");
+ d6 = descs.get(1);
+ assertEquals(d6.getLang(), "fr");
+ assertEquals(d6.getDescription(), "N'coutez pas moi");
+ dnames = listener2.getDisplayNames();
+ assertEquals(dnames.size(), 2);
+ dn5 = dnames.get(0);
+ assertEquals(dn5.getLang(), "en");
+ assertEquals(dn5.getDisplayName(), "Listen!");
+ dn6 = dnames.get(1);
+ assertEquals(dn6.getLang(), "fr");
+ assertEquals(dn6.getDisplayName(), "coutez!");
}
}
Added: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java?rev=750252&view=auto
==============================================================================
--- portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java (added)
+++ portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java Thu Mar 5 00:21:25 2009
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2008 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;
+
+
+public interface FilterLifecycle
+{
+ String getName();
+}
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilterLifecycle.java
------------------------------------------------------------------------------
svn:keywords = Id
Added: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java?rev=750252&view=auto
==============================================================================
--- portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java (added)
+++ portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java Thu Mar 5 00:21:25 2009
@@ -0,0 +1,22 @@
+/*
+ * Copyright 2008 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;
+
+
+public interface FilteredPortlet
+{
+ String getName();
+}
\ No newline at end of file
Propchange: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: portals/jetspeed-2/portal/trunk/jetspeed-api/src/main/java/org/apache/jetspeed/om/portlet/FilteredPortlet.java
------------------------------------------------------------------------------
svn:keywords = Id
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=750252&r1=750251&r2=750252&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 Thu Mar 5 00:21:25 2009
@@ -370,5 +370,51 @@
<column name="PREFIX" required="false" size="20" type="VARCHAR"/>
<column name="IDENTIFIER" required="true" size="150" type="VARCHAR"/>
</table>
-
+
+ <!--
+ PORTLET FILTER
+ -->
+ <table name="PORTLET_FILTER">
+ <column name="ID" primaryKey="true" required="true" type="INTEGER"/>
+ <column name="APPLICATION_ID" required="true" type="INTEGER"/>
+ <column name="FILTER_NAME" required="true" size="80" type="VARCHAR"/>
+ <column name="FILTER_CLASS" required="false" size="255" type="VARCHAR"/>
+ </table>
+
+ <!--
+ FILTER LIFECYCLE
+ -->
+ <table name="FILTER_LIFECYCLE">
+ <column name="ID" primaryKey="true" required="true" type="INTEGER"/>
+ <column name="OWNER_ID" required="true" type="INTEGER"/>
+ <column name="NAME" required="true" size="150" type="VARCHAR"/>
+ </table>
+
+ <!--
+ FILTER MAPPING
+ -->
+ <table name="FILTER_MAPPING">
+ <column name="ID" primaryKey="true" required="true" type="INTEGER"/>
+ <column name="APPLICATION_ID" required="true" type="INTEGER"/>
+ <column name="FILTER_NAME" required="true" size="150" type="VARCHAR"/>
+ </table>
+
+ <!--
+ FILTERED PORTLET
+ -->
+ <table name="FILTERED_PORTLET">
+ <column name="ID" primaryKey="true" required="true" type="INTEGER"/>
+ <column name="OWNER_ID" required="true" type="INTEGER"/>
+ <column name="NAME" required="true" size="150" type="VARCHAR"/>
+ </table>
+
+ <!--
+ PORTLET LISTENER
+ -->
+ <table name="PORTLET_LISTENER">
+ <column name="ID" primaryKey="true" required="true" type="INTEGER"/>
+ <column name="APPLICATION_ID" required="true" type="INTEGER"/>
+ <column name="LISTENER_CLASS" required="false" size="255" type="VARCHAR"/>
+ </table>
+
</database>
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org