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 2004/05/27 21:30:46 UTC
cvs commit: jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl PreferencesProviderImpl.java PreferencesImpl.java CommonQueries.java PropertyManagerImpl.java
weaver 2004/05/27 12:30:46
Modified: components/prefs/src/java/org/apache/jetspeed/prefs/impl
PreferencesProviderImpl.java PreferencesImpl.java
CommonQueries.java PropertyManagerImpl.java
Log:
see JS2-40: <http://nagoya.apache.org/jira/browse/JS2-40>
Revision Changes Path
1.4 +11 -23 jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PreferencesProviderImpl.java
Index: PreferencesProviderImpl.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PreferencesProviderImpl.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- PreferencesProviderImpl.java 10 Mar 2004 22:35:09 -0000 1.3
+++ PreferencesProviderImpl.java 27 May 2004 19:30:45 -0000 1.4
@@ -14,11 +14,10 @@
*/
package org.apache.jetspeed.prefs.impl;
-import org.apache.jetspeed.prefs.PreferencesProvider;
-import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
-
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.jetspeed.components.persistence.store.PersistenceStore;
+import org.apache.jetspeed.prefs.PreferencesProvider;
/**
* @author <a href="">David Le Strat</a>
@@ -32,40 +31,29 @@
/** The {@link PreferencesProvider} instance. */
static PreferencesProvider prefProvider;
- /** The persistence store container. */
- private PersistenceStoreContainer storeContainer;
- /** The store name. */
- private String storeKeyName;
+ private PersistenceStore persistenceStore;
/**
- * <p>Constructor providing the {@link PersistenceStoreContainer}
+ * <p>Constructor providing the {@link PersistenceStore}
* and store key name and the {@link java.util.prefs.PreferencesFactory}.</p>
*/
- public PreferencesProviderImpl(PersistenceStoreContainer storeContainer, String storeKeyName, String prefsFactoryImpl)
+ public PreferencesProviderImpl(PersistenceStore persistenceStore, String prefsFactoryImpl)
{
if (log.isDebugEnabled()) log.debug("Constructing PreferencesProviderImpl...");
- this.storeContainer = storeContainer;
- this.storeKeyName = storeKeyName;
+ this.persistenceStore = persistenceStore;
System.setProperty("java.util.prefs.PreferencesFactory", prefsFactoryImpl);
PreferencesProviderImpl.prefProvider = this;
}
- /**
- * @see org.apache.jetspeed.prefs.PreferencesProvider#getStoreContainer()
- */
- public PersistenceStoreContainer getStoreContainer()
- {
- return this.storeContainer;
- }
+
- /**
- * @see org.apache.jetspeed.prefs.PreferencesProvider#getStoreKeyName()
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.prefs.PreferencesProvider#getPersistenceStore()
*/
- public String getStoreKeyName()
+ public PersistenceStore getPersistenceStore()
{
- return this.storeKeyName;
+ return persistenceStore;
}
-
}
1.10 +6 -16 jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PreferencesImpl.java
Index: PreferencesImpl.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PreferencesImpl.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- PreferencesImpl.java 22 May 2004 21:28:58 -0000 1.9
+++ PreferencesImpl.java 27 May 2004 19:30:45 -0000 1.10
@@ -24,10 +24,8 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-
import org.apache.jetspeed.components.ComponentManager;
import org.apache.jetspeed.components.persistence.store.PersistenceStore;
-import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
import org.apache.jetspeed.prefs.PreferencesProvider;
import org.apache.jetspeed.prefs.om.Node;
import org.apache.jetspeed.prefs.om.Property;
@@ -53,11 +51,6 @@
/** The component manager. */
private ComponentManager cm;
- /** The persistence store container. */
- private PersistenceStoreContainer storeContainer;
-
- /** The store name. */
- private String jetspeedStoreName;
/** Common queries. **/
private CommonQueries commonQueries;
@@ -97,6 +90,8 @@
/** System root node. */
static Preferences systemRoot = new PreferencesImpl(null, "", SYSTEM_NODE_TYPE);
+ protected PersistenceStore persistenceStore;
+
/**
* <p>Constructs a root node in the underlying
* datastore if they have not yet been created.</p>
@@ -113,9 +108,8 @@
if (log.isDebugEnabled())
log.debug("Constructing node: " + nodeName);
PreferencesProvider prefProvider = PreferencesProviderImpl.prefProvider;
- this.storeContainer = prefProvider.getStoreContainer();
- this.jetspeedStoreName = prefProvider.getStoreKeyName();
- this.commonQueries = new CommonQueries(storeContainer, jetspeedStoreName);
+ persistenceStore = prefProvider.getPersistenceStore();
+ this.commonQueries = new CommonQueries(persistenceStore);
this.nodeType = nodeType;
long[] result = createPrefNode(parent, nodeName, nodeType, this.absolutePath());
@@ -585,12 +579,8 @@
*/
protected PersistenceStore getPersistenceStore()
{
- PersistenceStore store = storeContainer.getStoreForThread(jetspeedStoreName);
- if (!store.getTransaction().isOpen())
- {
- store.getTransaction().begin();
- }
- return store;
+
+ return persistenceStore;
}
}
1.3 +39 -51 jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/CommonQueries.java
Index: CommonQueries.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/CommonQueries.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- CommonQueries.java 6 Mar 2004 18:31:01 -0000 1.2
+++ CommonQueries.java 27 May 2004 19:30:45 -0000 1.3
@@ -14,12 +14,11 @@
*/
package org.apache.jetspeed.prefs.impl;
+import org.apache.jetspeed.components.persistence.store.Filter;
+import org.apache.jetspeed.components.persistence.store.PersistenceStore;
import org.apache.jetspeed.prefs.om.impl.NodeImpl;
import org.apache.jetspeed.prefs.om.impl.PropertyImpl;
import org.apache.jetspeed.prefs.om.impl.PropertyKeyImpl;
-import org.apache.jetspeed.components.persistence.store.PersistenceStore;
-import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
-import org.apache.jetspeed.components.persistence.store.Filter;
/**
* <p>Preferences implementation common queries.</p>
@@ -29,19 +28,14 @@
public class CommonQueries
{
- /** The persistence store container. */
- private PersistenceStoreContainer storeContainer;
-
- /** The store name. */
- private String jetspeedStoreName;
+ private PersistenceStore persistenceStore;
/**
* <p>Constructor providing access to the persistence component.</p>
*/
- public CommonQueries(PersistenceStoreContainer storeContainer, String keyStoreName)
+ public CommonQueries(PersistenceStore persistenceStore)
{
- this.storeContainer = storeContainer;
- this.jetspeedStoreName = keyStoreName;
+ this.persistenceStore = persistenceStore;
}
/**
@@ -52,10 +46,10 @@
*/
Object newPropertyKeyQueryById(Object propertyKeyIdObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("propertyKeyId", propertyKeyIdObject);
- Object query = store.newQuery(PropertyKeyImpl.class, filter);
+ Object query = persistenceStore.newQuery(PropertyKeyImpl.class, filter);
return query;
}
@@ -67,10 +61,10 @@
*/
Object newPropertyKeyQueryByName(Object propertyKeyNameObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("propertyKeyName", propertyKeyNameObject);
- Object query = store.newQuery(PropertyKeyImpl.class, filter);
+ Object query = persistenceStore.newQuery(PropertyKeyImpl.class, filter);
return query;
}
@@ -82,10 +76,9 @@
*/
Object newPropertyQueryById(Object propertyKeyIdObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("propertyKeyId", propertyKeyIdObject);
- Object query = store.newQuery(PropertyImpl.class, filter);
+ Object query = persistenceStore.newQuery(PropertyImpl.class, filter);
return query;
}
@@ -98,11 +91,11 @@
*/
Object newPropertyQueryByNodeIdAndPropertyKeyId(Object nodeIdObject, Object propertyKeyIdObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("nodeId", nodeIdObject);
filter.addEqualTo("propertyKeyId", propertyKeyIdObject);
- Object query = store.newQuery(PropertyImpl.class, filter);
+ Object query = persistenceStore.newQuery(PropertyImpl.class, filter);
return query;
}
@@ -114,10 +107,9 @@
*/
Object newNodeQueryById(Object nodeIdObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("nodeId", nodeIdObject);
- Object query = store.newQuery(NodeImpl.class, filter);
+ Object query = persistenceStore.newQuery(NodeImpl.class, filter);
return query;
}
@@ -131,12 +123,12 @@
*/
Object newNodeQueryByParentIdNameAndType(Object parentNodeIdObject, Object nodeName, Object nodeType)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("parentNodeId", parentNodeIdObject);
filter.addEqualTo("nodeName", nodeName);
filter.addEqualTo("nodeType", nodeType);
- Object query = store.newQuery(NodeImpl.class, filter);
+ Object query = persistenceStore.newQuery(NodeImpl.class, filter);
return query;
}
@@ -148,10 +140,10 @@
*/
Object newNodeQueryByParentId(Object parentNodeIdObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
+
+ Filter filter = persistenceStore.newFilter();
filter.addEqualTo("parentNodeId", parentNodeIdObject);
- Object query = store.newQuery(NodeImpl.class, filter);
+ Object query = persistenceStore.newQuery(NodeImpl.class, filter);
return query;
}
@@ -164,27 +156,23 @@
*/
Object newNodeQueryByPathAndType(Object fullPath, Object nodeTypeObject)
{
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
- filter.addEqualTo("fullPath", fullPath);
- filter.addEqualTo("nodeType", nodeTypeObject);
- Object query = store.newQuery(NodeImpl.class, filter);
- return query;
- }
-
- /**
- * <p>Utility method to get the persistence store and initiate
- * the transaction if not open.</p>
- * @return The persistence store.
- */
- protected PersistenceStore getPersistenceStore()
- {
- PersistenceStore store = storeContainer.getStoreForThread(jetspeedStoreName);
- if (!store.getTransaction().isOpen())
+
+ try
{
- store.getTransaction().begin();
+ Filter filter = persistenceStore.newFilter();
+ filter.addEqualTo("fullPath", fullPath);
+ filter.addEqualTo("nodeType", nodeTypeObject);
+ Object query = persistenceStore.newQuery(NodeImpl.class, filter);
+ return query;
+ }
+ catch (RuntimeException e)
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ throw e;
}
- return store;
}
+
+
}
1.6 +29 -52 jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PropertyManagerImpl.java
Index: PropertyManagerImpl.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed-2/components/prefs/src/java/org/apache/jetspeed/prefs/impl/PropertyManagerImpl.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- PropertyManagerImpl.java 5 May 2004 18:32:43 -0000 1.5
+++ PropertyManagerImpl.java 27 May 2004 19:30:45 -0000 1.6
@@ -16,17 +16,15 @@
import java.sql.Timestamp;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
-import java.util.Collection;
import java.util.prefs.Preferences;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-
import org.apache.jetspeed.components.persistence.store.PersistenceStore;
-import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
import org.apache.jetspeed.prefs.PropertyManager;
import org.apache.jetspeed.prefs.om.Node;
import org.apache.jetspeed.prefs.om.Property;
@@ -50,28 +48,23 @@
/** System <tt>Preferences</tt> node type. */
private static final int SYSTEM_NODE_TYPE = 1;
- /** The persistence store container. */
- private PersistenceStoreContainer storeContainer;
-
- /** The store name. */
- private String jetspeedStoreName;
-
- /** Common queries. **/
+ /** Common queries. **/
private CommonQueries commonQueries;
+ private PersistenceStore persistenceStore;
+
/**
* <p>Constructor providing access to the persistence component.</p>
*/
- public PropertyManagerImpl(PersistenceStoreContainer storeContainer, String keyStoreName)
+ public PropertyManagerImpl(PersistenceStore persistenceStore)
{
- if (storeContainer == null)
+ if (persistenceStore == null)
{
- throw new IllegalArgumentException("storeContainer cannot be null for PropertyManagerImpl");
+ throw new IllegalArgumentException("persistenceStore cannot be null for PropertyManagerImpl");
}
- this.storeContainer = storeContainer;
- this.jetspeedStoreName = keyStoreName;
- this.commonQueries = new CommonQueries(storeContainer, keyStoreName);
+ this.persistenceStore = persistenceStore;
+ this.commonQueries = new CommonQueries(persistenceStore);
}
/**
@@ -84,18 +77,18 @@
new String[] { "prefNode", "propertyKeysMap", },
"addPropertyKeys(java.util.prefs.Preferences, java.util.Collection)");
- PersistenceStore store = getPersistenceStore();
+
Node nodeObj;
if (prefNode.isUserNode())
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(USER_NODE_TYPE)));
}
else
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(SYSTEM_NODE_TYPE)));
}
if (null != nodeObj)
@@ -138,16 +131,16 @@
log.debug("Node: " + nodeObj.toString());
if (log.isDebugEnabled())
log.debug("Node property keys: " + newPropertyKeys.toString());
- store.lockForWrite(nodeObj);
+ persistenceStore.lockForWrite(nodeObj);
nodeObj.setNodeKeys(newPropertyKeys);
nodeObj.setModifiedDate(new Timestamp(System.currentTimeMillis()));
- store.getTransaction().checkpoint();
+ persistenceStore.getTransaction().checkpoint();
}
catch (Exception e)
{
String msg = "Unable to lock Node for update.";
log.error(msg, e);
- store.getTransaction().rollback();
+ persistenceStore.getTransaction().rollback();
throw new PropertyException(msg, e);
}
}
@@ -164,18 +157,18 @@
{
ArgUtil.notNull(new Object[] { prefNode }, new String[] { "prefNode" }, "getPropertyKeys(java.util.prefs.Preferences)");
- PersistenceStore store = getPersistenceStore();
+
Node nodeObj;
if (prefNode.isUserNode())
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(USER_NODE_TYPE)));
}
else
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(SYSTEM_NODE_TYPE)));
}
if (null != nodeObj)
@@ -205,18 +198,17 @@
new String[] { "prefNode", "propertyKeys" },
"removePropertyKeys(java.util.prefs.Preferences, java.util.Collection)");
- PersistenceStore store = getPersistenceStore();
Node nodeObj;
if (prefNode.isUserNode())
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(USER_NODE_TYPE)));
}
else
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(SYSTEM_NODE_TYPE)));
}
if (null != nodeObj)
@@ -245,17 +237,17 @@
// Remove the properties keys.
try
{
- store.lockForWrite(nodeObj);
+ persistenceStore.lockForWrite(nodeObj);
nodeObj.setNodeKeys(newKeys);
nodeObj.setNodeProperties(newProperties);
nodeObj.setModifiedDate(new Timestamp(System.currentTimeMillis()));
- store.getTransaction().checkpoint();
+ persistenceStore.getTransaction().checkpoint();
}
catch (Exception e)
{
String msg = "Unable to lock Node for update.";
log.error(msg, e);
- store.getTransaction().rollback();
+ persistenceStore.getTransaction().rollback();
throw new PropertyException(msg, e);
}
}
@@ -275,18 +267,18 @@
new String[] { "oldPropertyKeyName", "prefNode", "newPropertyKey" },
"updatePropertyKey(java.lang.String, java.util.prefs.Preferences, java.util.Map)");
- PersistenceStore store = getPersistenceStore();
+
Node nodeObj;
if (prefNode.isUserNode())
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(USER_NODE_TYPE)));
}
else
{
nodeObj =
- (Node) store.getObjectByQuery(
+ (Node) persistenceStore.getObjectByQuery(
commonQueries.newNodeQueryByPathAndType(prefNode.absolutePath(), new Integer(SYSTEM_NODE_TYPE)));
}
if (null != nodeObj)
@@ -303,19 +295,19 @@
// Update the property key.
try
{
- store.lockForWrite(curPropKey);
+ persistenceStore.lockForWrite(curPropKey);
curPropKey.setPropertyKeyName(newKey);
curPropKey.setPropertyKeyType(((Integer) newPropertyKey.get(newKey)).intValue());
curPropKey.setModifiedDate(new Timestamp(System.currentTimeMillis()));
if (log.isDebugEnabled())
log.debug("Updated property key: " + curPropKey.toString());
- store.getTransaction().checkpoint();
+ persistenceStore.getTransaction().checkpoint();
}
catch (Exception e)
{
String msg = "Unable to lock Node for update.";
log.error(msg, e);
- store.getTransaction().rollback();
+ persistenceStore.getTransaction().rollback();
throw new PropertyException(msg, e);
}
}
@@ -326,21 +318,6 @@
{
throw new PropertyException(PropertyException.NODE_NOT_FOUND);
}
- }
-
- /**
- * <p>Utility method to get the persistence store and initiate
- * the transaction if not open.</p>
- * @return The persistence store.
- */
- protected PersistenceStore getPersistenceStore()
- {
- PersistenceStore store = storeContainer.getStoreForThread(jetspeedStoreName);
- if (!store.getTransaction().isOpen())
- {
- store.getTransaction().begin();
- }
- return store;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org