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 rw...@apache.org on 2005/10/12 16:15:05 UTC
svn commit: r314917 - in
/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page:
impl/AbstractPageManager.java impl/DatabasePageManager.java
impl/DelegatingPageManager.java psml/CastorXmlPageManager.java
Author: rwatler
Date: Wed Oct 12 07:15:00 2005
New Revision: 314917
URL: http://svn.apache.org/viewcvs?rev=314917&view=rev
Log:
configure model class for AbstractPageManager
Modified:
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/AbstractPageManager.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DelegatingPageManager.java
portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/psml/CastorXmlPageManager.java
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/AbstractPageManager.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/AbstractPageManager.java?rev=314917&r1=314916&r2=314917&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/AbstractPageManager.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/AbstractPageManager.java Wed Oct 12 07:15:00 2005
@@ -20,6 +20,7 @@
import java.util.Iterator;
import java.util.List;
import java.util.LinkedList;
+import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -33,22 +34,10 @@
import org.apache.jetspeed.om.folder.MenuIncludeDefinition;
import org.apache.jetspeed.om.folder.MenuOptionsDefinition;
import org.apache.jetspeed.om.folder.MenuSeparatorDefinition;
-import org.apache.jetspeed.om.folder.psml.FolderImpl;
-import org.apache.jetspeed.om.folder.psml.MenuDefinitionImpl;
-import org.apache.jetspeed.om.folder.psml.MenuExcludeDefinitionImpl;
-import org.apache.jetspeed.om.folder.psml.MenuIncludeDefinitionImpl;
-import org.apache.jetspeed.om.folder.psml.MenuOptionsDefinitionImpl;
-import org.apache.jetspeed.om.folder.psml.MenuSeparatorDefinitionImpl;
import org.apache.jetspeed.om.page.Fragment;
import org.apache.jetspeed.om.page.Link;
import org.apache.jetspeed.om.page.Page;
import org.apache.jetspeed.om.page.Property;
-import org.apache.jetspeed.om.page.psml.FragmentImpl;
-import org.apache.jetspeed.om.page.psml.LinkImpl;
-import org.apache.jetspeed.om.page.psml.PageImpl;
-import org.apache.jetspeed.om.page.psml.PropertyImpl;
-import org.apache.jetspeed.om.page.psml.SecurityConstraintImpl;
-import org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl;
import org.apache.jetspeed.page.PageManager;
import org.apache.jetspeed.page.PageManagerEventListener;
import org.apache.jetspeed.page.PageNotUpdatedException;
@@ -66,18 +55,18 @@
{
private final static Log log = LogFactory.getLog(AbstractPageManager.class);
- protected Class fragmentClass = FragmentImpl.class;
- protected Class pageClass = PageImpl.class;
- protected Class folderClass = FolderImpl.class;
- protected Class linkClass = LinkImpl.class;
- protected Class propertyClass = PropertyImpl.class;
- protected Class menuDefinitionClass = MenuDefinitionImpl.class;
- protected Class menuExcludeDefinitionClass = MenuExcludeDefinitionImpl.class;
- protected Class menuIncludeDefinitionClass = MenuIncludeDefinitionImpl.class;
- protected Class menuOptionsDefinitionClass = MenuOptionsDefinitionImpl.class;
- protected Class menuSeparatorDefinitionClass = MenuSeparatorDefinitionImpl.class;
- protected Class securityConstraintsClass = SecurityConstraintsImpl.class;
- protected Class securityConstraintClass = SecurityConstraintImpl.class;
+ protected Class fragmentClass;
+ protected Class pageClass;
+ protected Class folderClass;
+ protected Class linkClass;
+ protected Class propertyClass;
+ protected Class menuDefinitionClass;
+ protected Class menuExcludeDefinitionClass;
+ protected Class menuIncludeDefinitionClass;
+ protected Class menuOptionsDefinitionClass;
+ protected Class menuSeparatorDefinitionClass;
+ protected Class securityConstraintsClass;
+ protected Class securityConstraintClass;
protected IdGenerator generator = null;
@@ -94,23 +83,22 @@
this.constraintsEnabled = constraintsEnabled;
}
- public AbstractPageManager(IdGenerator generator, boolean permissionsEnabled, boolean constraintsEnabled, List modelClasses)
+ public AbstractPageManager(IdGenerator generator, boolean permissionsEnabled, boolean constraintsEnabled, Map modelClasses)
{
- this.generator = generator;
- if (modelClasses.size() > 0)
- {
- this.fragmentClass = (Class)modelClasses.get(0);
- if (modelClasses.size() > 1)
- {
- this.pageClass = (Class)modelClasses.get(1);
- if (modelClasses.size() > 2)
- {
- this.propertyClass = (Class)modelClasses.get(2);
- }
- }
- }
- this.permissionsEnabled = permissionsEnabled;
- this.constraintsEnabled = constraintsEnabled;
+ this(generator, permissionsEnabled, constraintsEnabled);
+
+ this.fragmentClass = (Class)modelClasses.get("FragmentImpl.class");
+ this.pageClass = (Class)modelClasses.get("PageImpl.class");
+ this.folderClass = (Class)modelClasses.get("FolderImpl.class");
+ this.linkClass = (Class)modelClasses.get("LinkImpl.class");
+ this.propertyClass = (Class)modelClasses.get("PropertyImpl.class");
+ this.menuDefinitionClass = (Class)modelClasses.get("MenuDefinitionImpl.class");
+ this.menuExcludeDefinitionClass = (Class)modelClasses.get("MenuExcludeDefinitionImpl.class");
+ this.menuIncludeDefinitionClass = (Class)modelClasses.get("MenuIncludeDefinitionImpl.class");
+ this.menuOptionsDefinitionClass = (Class)modelClasses.get("MenuOptionsDefinitionImpl.class");
+ this.menuSeparatorDefinitionClass = (Class)modelClasses.get("MenuSeparatorDefinitionImpl.class");
+ this.securityConstraintsClass = (Class)modelClasses.get("SecurityConstraintsImpl.class");
+ this.securityConstraintClass = (Class)modelClasses.get("SecurityConstraintImpl.class");
}
/**
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java?rev=314917&r1=314916&r2=314917&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java Wed Oct 12 07:15:00 2005
@@ -1,5 +1,8 @@
package org.apache.jetspeed.page.impl;
+import java.util.HashMap;
+import java.util.Map;
+
import org.apache.jetspeed.components.dao.InitablePersistenceBrokerDaoSupport;
import org.apache.jetspeed.exception.JetspeedException;
import org.apache.jetspeed.idgenerator.IdGenerator;
@@ -13,13 +16,15 @@
import org.apache.jetspeed.om.folder.MenuIncludeDefinition;
import org.apache.jetspeed.om.folder.MenuOptionsDefinition;
import org.apache.jetspeed.om.folder.MenuSeparatorDefinition;
+import org.apache.jetspeed.om.folder.impl.FolderImpl;
import org.apache.jetspeed.om.page.ContentPage;
import org.apache.jetspeed.om.page.Fragment;
import org.apache.jetspeed.om.page.Link;
import org.apache.jetspeed.om.page.Page;
import org.apache.jetspeed.om.page.PageSecurity;
import org.apache.jetspeed.om.page.Property;
-import org.apache.jetspeed.om.page.psml.PageImpl;
+import org.apache.jetspeed.om.page.impl.FragmentImpl;
+import org.apache.jetspeed.om.page.impl.PageImpl;
import org.apache.jetspeed.page.FolderNotRemovedException;
import org.apache.jetspeed.page.FolderNotUpdatedException;
import org.apache.jetspeed.page.LinkNotRemovedException;
@@ -36,7 +41,6 @@
import org.apache.ojb.broker.query.QueryByCriteria;
import org.apache.ojb.broker.query.QueryFactory;
-
/**
* DatabasePageManager
*
@@ -47,6 +51,23 @@
public class DatabasePageManager extends InitablePersistenceBrokerDaoSupport
implements PageManager
{
+ private static Map modelClasses = new HashMap();
+ static
+ {
+ modelClasses.put("FragmentImpl.class", FragmentImpl.class);
+ modelClasses.put("PageImpl.class", PageImpl.class);
+ modelClasses.put("FolderImpl.class", FolderImpl.class);
+ //modelClasses.put("LinkImpl.class", LinkImpl.class);
+ //modelClasses.put("PropertyImpl.class", PropertyImpl.class);
+ //modelClasses.put("MenuDefinitionImpl.class", MenuDefinitionImpl.class);
+ //modelClasses.put("MenuExcludeDefinitionImpl.class", MenuExcludeDefinitionImpl.class);
+ //modelClasses.put("MenuIncludeDefinitionImpl.class", MenuIncludeDefinitionImpl.class);
+ //modelClasses.put("MenuOptionsDefinitionImpl.class", MenuOptionsDefinitionImpl.class);
+ //modelClasses.put("MenuSeparatorDefinitionImpl.class", MenuSeparatorDefinitionImpl.class);
+ //modelClasses.put("SecurityConstraintsImpl.class", SecurityConstraintsImpl.class);
+ //modelClasses.put("SecurityConstraintImpl.class", SecurityConstraintImpl.class);
+ }
+
private DelegatingPageManager delegator;
public DatabasePageManager(
@@ -58,7 +79,7 @@
{
super(repositoryPath);
System.out.println("Page Manager repo = " + repositoryPath);
- delegator = new DelegatingPageManager(generator, isPermissionsSecurity, isConstraintsSecurity);
+ delegator = new DelegatingPageManager(generator, isPermissionsSecurity, isConstraintsSecurity, modelClasses);
}
/* (non-Javadoc)
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DelegatingPageManager.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DelegatingPageManager.java?rev=314917&r1=314916&r2=314917&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DelegatingPageManager.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/impl/DelegatingPageManager.java Wed Oct 12 07:15:00 2005
@@ -1,5 +1,7 @@
package org.apache.jetspeed.page.impl;
+import java.util.Map;
+
import org.apache.jetspeed.exception.JetspeedException;
import org.apache.jetspeed.idgenerator.IdGenerator;
import org.apache.jetspeed.om.folder.Folder;
@@ -34,9 +36,10 @@
DelegatingPageManager(
IdGenerator generator,
boolean isPermissionsSecurity,
- boolean isConstraintsSecurity)
+ boolean isConstraintsSecurity,
+ Map modelClasses)
{
- super(generator, isPermissionsSecurity, isConstraintsSecurity);
+ super(generator, isPermissionsSecurity, isConstraintsSecurity, modelClasses);
}
/* (non-Javadoc)
* @see org.apache.jetspeed.page.PageManager#getPage(java.lang.String)
Modified: portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/psml/CastorXmlPageManager.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/psml/CastorXmlPageManager.java?rev=314917&r1=314916&r2=314917&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/psml/CastorXmlPageManager.java (original)
+++ portals/jetspeed-2/trunk/components/page-manager/src/java/org/apache/jetspeed/page/psml/CastorXmlPageManager.java Wed Oct 12 07:15:00 2005
@@ -17,7 +17,9 @@
package org.apache.jetspeed.page.psml;
import java.io.FileNotFoundException;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -31,13 +33,22 @@
import org.apache.jetspeed.om.folder.FolderNotFoundException;
import org.apache.jetspeed.om.folder.InvalidFolderException;
import org.apache.jetspeed.om.folder.psml.FolderImpl;
+import org.apache.jetspeed.om.folder.psml.MenuDefinitionImpl;
+import org.apache.jetspeed.om.folder.psml.MenuExcludeDefinitionImpl;
+import org.apache.jetspeed.om.folder.psml.MenuIncludeDefinitionImpl;
+import org.apache.jetspeed.om.folder.psml.MenuOptionsDefinitionImpl;
+import org.apache.jetspeed.om.folder.psml.MenuSeparatorDefinitionImpl;
import org.apache.jetspeed.om.page.ContentPage;
import org.apache.jetspeed.om.page.Link;
import org.apache.jetspeed.om.page.Page;
import org.apache.jetspeed.om.page.PageSecurity;
import org.apache.jetspeed.om.page.psml.ContentPageImpl;
+import org.apache.jetspeed.om.page.psml.FragmentImpl;
import org.apache.jetspeed.om.page.psml.LinkImpl;
import org.apache.jetspeed.om.page.psml.PageImpl;
+import org.apache.jetspeed.om.page.psml.PropertyImpl;
+import org.apache.jetspeed.om.page.psml.SecurityConstraintImpl;
+import org.apache.jetspeed.om.page.psml.SecurityConstraintsImpl;
import org.apache.jetspeed.page.PageManager;
import org.apache.jetspeed.page.PageNotFoundException;
import org.apache.jetspeed.page.document.DocumentHandlerFactory;
@@ -64,31 +75,30 @@
protected final static String PROFILE_PROPERTY_FOLDER_PREFIX = "_";
protected final static String PROFILE_NAVIGATION_PROPERTY_FOLDER_PREFIX = "__";
- private DocumentHandlerFactory handlerFactory;
+ private static Map modelClasses = new HashMap();
+ static
+ {
+ modelClasses.put("FragmentImpl.class", FragmentImpl.class);
+ modelClasses.put("PageImpl.class", PageImpl.class);
+ modelClasses.put("FolderImpl.class", FolderImpl.class);
+ modelClasses.put("LinkImpl.class", LinkImpl.class);
+ modelClasses.put("PropertyImpl.class", PropertyImpl.class);
+ modelClasses.put("MenuDefinitionImpl.class", MenuDefinitionImpl.class);
+ modelClasses.put("MenuExcludeDefinitionImpl.class", MenuExcludeDefinitionImpl.class);
+ modelClasses.put("MenuIncludeDefinitionImpl.class", MenuIncludeDefinitionImpl.class);
+ modelClasses.put("MenuOptionsDefinitionImpl.class", MenuOptionsDefinitionImpl.class);
+ modelClasses.put("MenuSeparatorDefinitionImpl.class", MenuSeparatorDefinitionImpl.class);
+ modelClasses.put("SecurityConstraintsImpl.class", SecurityConstraintsImpl.class);
+ modelClasses.put("SecurityConstraintImpl.class", SecurityConstraintImpl.class);
+ }
+ private DocumentHandlerFactory handlerFactory;
private FolderHandler folderHandler;
-
private FileCache fileCache;
- // default configuration values
-
public CastorXmlPageManager( IdGenerator generator, DocumentHandlerFactory handlerFactory,
FolderHandler folderHandler, FileCache fileCache,
boolean permissionsEnabled, boolean constraintsEnabled ) throws FileNotFoundException
- {
- super(generator, permissionsEnabled, constraintsEnabled);
- handlerFactory.setPermissionsEnabled(permissionsEnabled);
- handlerFactory.setConstraintsEnabled(constraintsEnabled);
- this.handlerFactory = handlerFactory;
- this.folderHandler = folderHandler;
- this.fileCache = fileCache;
- this.fileCache.addListener(this);
- }
-
- public CastorXmlPageManager( IdGenerator generator, DocumentHandlerFactory handlerFactory,
- FolderHandler folderHandler, FileCache fileCache,
- boolean permissionsEnabled, boolean constraintsEnabled,
- List modelClasses ) throws FileNotFoundException
{
super(generator, permissionsEnabled, constraintsEnabled, modelClasses);
handlerFactory.setPermissionsEnabled(permissionsEnabled);
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org