You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by md...@apache.org on 2011/09/13 15:19:27 UTC
svn commit: r1170170 - in /jackrabbit/sandbox/jackrabbit-mk:
jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/
jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/
jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2sp...
Author: mduerig
Date: Tue Sep 13 13:19:26 2011
New Revision: 1170170
URL: http://svn.apache.org/viewvc?rev=1170170&view=rev
Log:
Microkernel based Jackrabbit prototype (WIP)
refactor: consolidate ManagerProvider
Modified:
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/AbstractValueFactory.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ManagerProvider.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NamespaceRegistryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/PropertyImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/RepositoryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/SessionImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/nodetype/NodeTypeManagerImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AbstractCopy.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Clone.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Copy.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryManagerImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryObjectModelImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryResultImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemStateValidator.java
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/AbstractValueFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/AbstractValueFactory.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/AbstractValueFactory.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr-commons/src/main/java/org/apache/jackrabbit/value/AbstractValueFactory.java Tue Sep 13 13:19:26 2011
@@ -96,8 +96,7 @@ public abstract class AbstractValueFacto
return new StringValue(value);
}
- public Value createValue(String value, int type)
- throws ValueFormatException {
+ public Value createValue(String value, int type) throws ValueFormatException {
Value val;
switch (type) {
case PropertyType.STRING:
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ManagerProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ManagerProvider.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ManagerProvider.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ManagerProvider.java Tue Sep 13 13:19:26 2011
@@ -23,9 +23,9 @@ import org.apache.jackrabbit.jcr2spi.nod
import org.apache.jackrabbit.jcr2spi.nodetype.NodeTypeDefinitionProvider;
import org.apache.jackrabbit.jcr2spi.security.AccessManager;
import org.apache.jackrabbit.jcr2spi.version.VersionManager;
+import org.apache.jackrabbit.spi.PathFactory;
import org.apache.jackrabbit.spi.QValueFactory;
import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
-import org.apache.jackrabbit.spi.commons.namespace.NamespaceResolver;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
@@ -38,8 +38,6 @@ public interface ManagerProvider {
NamePathResolver getNamePathResolver();
- NamespaceResolver getNamespaceResolver();
-
HierarchyManager getHierarchyManager();
AccessManager getAccessManager();
@@ -62,6 +60,10 @@ public interface ManagerProvider {
*/
VersionManager getVersionStateManager();
+ WorkspaceManager getWorkspaceManager();
+
+ ItemManager getItemManager();
+
ItemDefinitionProvider getItemDefinitionProvider();
NodeTypeDefinitionProvider getNodeTypeDefinitionProvider();
@@ -80,4 +82,6 @@ public interface ManagerProvider {
ValueFactory getJcrValueFactory() throws RepositoryException;
QValueFactory getQValueFactory() throws RepositoryException;
+
+ PathFactory getPathFactory();
}
\ No newline at end of file
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NamespaceRegistryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NamespaceRegistryImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NamespaceRegistryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NamespaceRegistryImpl.java Tue Sep 13 13:19:26 2011
@@ -16,15 +16,13 @@
*/
package org.apache.jackrabbit.jcr2spi;
-import java.util.Collection;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import javax.jcr.NamespaceRegistry;
import javax.jcr.NamespaceException;
-import javax.jcr.UnsupportedRepositoryOperationException;
+import javax.jcr.NamespaceRegistry;
import javax.jcr.RepositoryException;
+import java.util.Collection;
/**
* {@code NamespaceRegistryImpl} implements the JCR client facing
@@ -73,8 +71,8 @@ public class NamespaceRegistryImpl imple
// try to load the uri
try {
return storage.getURI(prefix);
- } catch (RepositoryException ex) {
- log.debug("Internal error while loading registered namespaces.");
+ } catch (RepositoryException e) {
+ log.debug("Internal error while loading registered namespaces.", e);
throw new NamespaceException(prefix + ": is not a registered namespace prefix.");
}
}
@@ -84,8 +82,8 @@ public class NamespaceRegistryImpl imple
// try to load the prefix
try {
return storage.getPrefix(uri);
- } catch (RepositoryException ex) {
- log.debug("Internal error while loading registered namespaces.");
+ } catch (RepositoryException e) {
+ log.debug("Internal error while loading registered namespaces.", e);
throw new NamespaceException(uri + ": is not a registered namespace uri.");
}
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/PropertyImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/PropertyImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/PropertyImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/PropertyImpl.java Tue Sep 13 13:19:26 2011
@@ -55,7 +55,6 @@ public class PropertyImpl extends ItemIm
public PropertyImpl(SessionImpl session, PropertyState state, ItemLifeCycleListener listener) {
super(session, state, listener);
- // NOTE: JCR value(s) will be read (and converted from the internal value representation) on demand.
}
//-----------------------------------------------------< Item interface >---
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/RepositoryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/RepositoryImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/RepositoryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/RepositoryImpl.java Tue Sep 13 13:19:26 2011
@@ -34,7 +34,6 @@ import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.Value;
-import javax.jcr.ValueFactory;
import javax.naming.Context;
import javax.naming.Name;
import javax.naming.NamingException;
@@ -65,7 +64,6 @@ public class RepositoryImpl extends Abst
// dummy value factory and dummy resolver as descriptors are not
// expected to contain Name or Path values.
- ValueFactory vf = ValueFactoryImpl.getInstance();
NamePathResolver resolver = new DefaultNamePathResolver(new NamespaceResolver() {
@Override
public String getURI(String prefix) {
@@ -84,7 +82,7 @@ public class RepositoryImpl extends Abst
QValue[] qvs = stringEntry.getValue();
Value[] vs = new Value[qvs.length];
for (int i = 0; i < qvs.length; i++) {
- vs[i] = ValueFormat.getJCRValue(qvs[i], resolver, vf);
+ vs[i] = ValueFormat.getJCRValue(qvs[i], resolver, ValueFactoryImpl.getInstance());
}
this.descriptors.put(stringEntry.getKey(), vs);
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/SessionImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/SessionImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/SessionImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/SessionImpl.java Tue Sep 13 13:19:26 2011
@@ -142,7 +142,7 @@ public class SessionImpl extends Abstrac
// build nodetype manager
ntManager = new NodeTypeManagerImpl(workspace.getNodeTypeRegistry(), this);
- validator = new ItemStateValidator(this, getPathFactory());
+ validator = new ItemStateValidator(this);
itemStateManager = new SessionItemStateManager(workspace.getUpdateableItemStateManager(), getValidator(),
getQValueFactory(), workspace.getItemStateFactory(), this);
@@ -385,7 +385,7 @@ public class SessionImpl extends Abstrac
// NOTE: check if path corresponds to Node and is writable is performed
// within the SessionImporter.
Importer importer = new SessionImporter(parentPath, this, itemStateManager, uuidBehavior);
- return new ImportHandler(importer, getNamespaceResolver(), workspace.getNamespaceRegistry(), getNameFactory(),
+ return new ImportHandler(importer, this, workspace.getNamespaceRegistry(), getNameFactory(),
getPathFactory());
}
@@ -709,11 +709,6 @@ public class SessionImpl extends Abstrac
}
@Override
- public NamespaceResolver getNamespaceResolver() {
- return this;
- }
-
- @Override
public final HierarchyManager getHierarchyManager() {
return workspace.getHierarchyManager();
}
@@ -734,6 +729,16 @@ public class SessionImpl extends Abstrac
}
@Override
+ public WorkspaceManager getWorkspaceManager() {
+ return workspace.getWorkspaceManager();
+ }
+
+ @Override
+ public ItemManager getItemManager() {
+ return itemManager;
+ }
+
+ @Override
public ItemDefinitionProvider getItemDefinitionProvider() {
return workspace.getItemDefinitionProvider();
}
@@ -758,12 +763,13 @@ public class SessionImpl extends Abstrac
return valueFactory;
}
- //--------------------------------------------------------------------------
-
- final ItemManager getItemManager() {
- return itemManager;
+ @Override
+ public PathFactory getPathFactory() {
+ return workspace.getPathFactory();
}
+ //--------------------------------------------------------------------------
+
// TODO public for SessionImport only. review
public final ItemStateValidator getValidator() {
return validator;
@@ -778,10 +784,6 @@ public class SessionImpl extends Abstrac
return workspace.getNameFactory();
}
- final PathFactory getPathFactory() {
- return workspace.getPathFactory();
- }
-
/**
* Returns the {@code ItemStateManager} associated with this session.
*
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceImpl.java Tue Sep 13 13:19:26 2011
@@ -47,7 +47,6 @@ import org.apache.jackrabbit.spi.PathFac
import org.apache.jackrabbit.spi.QValueFactory;
import org.apache.jackrabbit.spi.SessionInfo;
import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
-import org.apache.jackrabbit.spi.commons.namespace.NamespaceResolver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.xml.sax.ContentHandler;
@@ -126,7 +125,7 @@ public class WorkspaceImpl implements Wo
Path srcPath = session.getQPath(srcAbsPath);
Path destPath = session.getQPath(destAbsPath);
- Operation op = Copy.create(srcPath, destPath, getName(), this, this);
+ Operation op = Copy.create(srcPath, destPath, getName(), getHierarchyManager(), getHierarchyManager());
getUpdateableItemStateManager().execute(op);
}
@@ -158,7 +157,9 @@ public class WorkspaceImpl implements Wo
WorkspaceImpl srcWsp = (WorkspaceImpl) srcSession.getWorkspace();
// do cross-workspace copy
- Operation op = Copy.create(srcPath, destPath, srcWsp.getName(), srcWsp, this);
+ Operation op = Copy.create(srcPath, destPath, srcWsp.getName(), srcWsp.getHierarchyManager(),
+ getHierarchyManager());
+
getUpdateableItemStateManager().execute(op);
} finally {
if (srcSession != null) {
@@ -200,7 +201,9 @@ public class WorkspaceImpl implements Wo
WorkspaceImpl srcWsp = (WorkspaceImpl) srcSession.getWorkspace();
// do clone
- Operation op = Clone.create(srcPath, destPath, srcWsp.getName(), removeExisting, srcWsp, this);
+ Operation op = Clone.create(srcPath, destPath, srcWsp.getName(), removeExisting,
+ srcWsp.getHierarchyManager(), getHierarchyManager());
+
getUpdateableItemStateManager().execute(op);
} finally {
if (srcSession != null) {
@@ -231,8 +234,7 @@ public class WorkspaceImpl implements Wo
public QueryManager getQueryManager() throws RepositoryException {
session.checkIsAlive();
if (qManager == null) {
- qManager = new QueryManagerImpl(session, session,
- session.getItemManager(), wspManager);
+ qManager = new QueryManagerImpl(session, session);
}
return qManager;
}
@@ -354,11 +356,6 @@ public class WorkspaceImpl implements Wo
}
@Override
- public NamespaceResolver getNamespaceResolver() {
- return session.getNamespaceResolver();
- }
-
- @Override
public HierarchyManager getHierarchyManager() {
return wspManager.getHierarchyManager();
}
@@ -385,6 +382,16 @@ public class WorkspaceImpl implements Wo
}
@Override
+ public WorkspaceManager getWorkspaceManager() {
+ return wspManager;
+ }
+
+ @Override
+ public ItemManager getItemManager() {
+ return session.getItemManager();
+ }
+
+ @Override
public ItemDefinitionProvider getItemDefinitionProvider() {
return wspManager.getItemDefinitionProvider();
}
@@ -409,6 +416,11 @@ public class WorkspaceImpl implements Wo
return session.getQValueFactory();
}
+ @Override
+ public PathFactory getPathFactory() {
+ return wspManager.getPathFactory();
+ }
+
//------------------------------------< implementation specific methods >---
void dispose() {
@@ -419,10 +431,6 @@ public class WorkspaceImpl implements Wo
return wspManager.getNameFactory();
}
- PathFactory getPathFactory() {
- return wspManager.getPathFactory();
- }
-
IdFactory getIdFactory() {
return wspManager.getIdFactory();
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/nodetype/NodeTypeManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/nodetype/NodeTypeManagerImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/nodetype/NodeTypeManagerImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/nodetype/NodeTypeManagerImpl.java Tue Sep 13 13:19:26 2011
@@ -16,27 +16,6 @@
*/
package org.apache.jackrabbit.jcr2spi.nodetype;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import javax.jcr.NamespaceException;
-import javax.jcr.PropertyType;
-import javax.jcr.RepositoryException;
-import javax.jcr.Value;
-import javax.jcr.ValueFactory;
-import javax.jcr.nodetype.NoSuchNodeTypeException;
-import javax.jcr.nodetype.NodeDefinition;
-import javax.jcr.nodetype.NodeType;
-import javax.jcr.nodetype.NodeTypeDefinition;
-import javax.jcr.nodetype.NodeTypeExistsException;
-import javax.jcr.nodetype.NodeTypeIterator;
-import javax.jcr.nodetype.NodeTypeManager;
-import javax.jcr.nodetype.PropertyDefinition;
-import javax.jcr.version.OnParentVersionAction;
-
import org.apache.commons.collections.map.ReferenceMap;
import org.apache.jackrabbit.commons.iterator.NodeTypeIteratorAdapter;
import org.apache.jackrabbit.jcr2spi.ManagerProvider;
@@ -53,6 +32,26 @@ import org.apache.jackrabbit.spi.commons
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import javax.jcr.NamespaceException;
+import javax.jcr.PropertyType;
+import javax.jcr.RepositoryException;
+import javax.jcr.Value;
+import javax.jcr.ValueFactory;
+import javax.jcr.nodetype.NoSuchNodeTypeException;
+import javax.jcr.nodetype.NodeDefinition;
+import javax.jcr.nodetype.NodeType;
+import javax.jcr.nodetype.NodeTypeDefinition;
+import javax.jcr.nodetype.NodeTypeExistsException;
+import javax.jcr.nodetype.NodeTypeIterator;
+import javax.jcr.nodetype.NodeTypeManager;
+import javax.jcr.nodetype.PropertyDefinition;
+import javax.jcr.version.OnParentVersionAction;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
import static org.apache.jackrabbit.spi.commons.util.Unchecked.cast;
/**
@@ -107,8 +106,7 @@ public class NodeTypeManagerImpl extends
* @param mgrProvider the manager provider
* @throws RepositoryException If an error occurs.
*/
- public NodeTypeManagerImpl(NodeTypeRegistry ntReg,
- ManagerProvider mgrProvider) throws RepositoryException {
+ public NodeTypeManagerImpl(NodeTypeRegistry ntReg, ManagerProvider mgrProvider) throws RepositoryException {
this.mgrProvider = mgrProvider;
this.ntReg = ntReg;
this.ntReg.addListener(this);
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AbstractCopy.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AbstractCopy.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AbstractCopy.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AbstractCopy.java Tue Sep 13 13:19:26 2011
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.jcr2spi.operation;
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
+import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
import org.apache.jackrabbit.jcr2spi.state.NodeState;
import org.apache.jackrabbit.spi.Name;
import org.apache.jackrabbit.spi.NodeId;
@@ -41,13 +41,12 @@ public abstract class AbstractCopy exten
*
* @param srcPath
* @param destPath
- * @param srcMgrProvider
*/
- AbstractCopy(Path srcPath, Path destPath, String srcWorkspaceName, ManagerProvider srcMgrProvider,
- ManagerProvider destMgrProvider) throws RepositoryException {
+ AbstractCopy(Path srcPath, Path destPath, String srcWorkspaceName, HierarchyManager srcHierarchyManager,
+ HierarchyManager destHierarchyManager) throws RepositoryException {
- srcState = getNodeState(srcPath, srcMgrProvider.getHierarchyManager());
- destParentState = getNodeState(destPath.getAncestor(1), destMgrProvider.getHierarchyManager());
+ srcState = getNodeState(srcPath, srcHierarchyManager);
+ destParentState = getNodeState(destPath.getAncestor(1), destHierarchyManager);
// check for illegal index present in destination path
int index = destPath.getIndex();
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Clone.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Clone.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Clone.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Clone.java Tue Sep 13 13:19:26 2011
@@ -16,20 +16,11 @@
*/
package org.apache.jackrabbit.jcr2spi.operation;
-import javax.jcr.AccessDeniedException;
-import javax.jcr.ItemExistsException;
-import javax.jcr.NoSuchWorkspaceException;
-import javax.jcr.RepositoryException;
-import javax.jcr.UnsupportedRepositoryOperationException;
-import javax.jcr.lock.LockException;
-import javax.jcr.nodetype.ConstraintViolationException;
-import javax.jcr.version.VersionException;
-
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyEntry;
+import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
import org.apache.jackrabbit.spi.Path;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+
+import javax.jcr.RepositoryException;
/**
* {@code Clone}...
@@ -38,10 +29,10 @@ public class Clone extends AbstractCopy
private final boolean removeExisting;
private Clone(Path srcPath, Path destPath, String srcWorkspaceName, boolean removeExisting,
- ManagerProvider srcMgrProvider, ManagerProvider destMgrProvider)
+ HierarchyManager srcHierarchyManager, HierarchyManager destHierarchyManager)
throws RepositoryException {
- super(srcPath, destPath, srcWorkspaceName, srcMgrProvider, destMgrProvider);
+ super(srcPath, destPath, srcWorkspaceName, srcHierarchyManager, destHierarchyManager);
this.removeExisting = removeExisting;
}
@@ -87,8 +78,8 @@ public class Clone extends AbstractCopy
public static Operation create(Path srcPath, Path destPath, String srcWorkspaceName, boolean removeExisting,
- ManagerProvider srcMgrProvider, ManagerProvider destMgrProvider) throws RepositoryException {
+ HierarchyManager srcHierarchyManager, HierarchyManager destHierarchyManager) throws RepositoryException {
- return new Clone(srcPath, destPath, srcWorkspaceName, removeExisting, srcMgrProvider, destMgrProvider);
+ return new Clone(srcPath, destPath, srcWorkspaceName, removeExisting, srcHierarchyManager, destHierarchyManager);
}
}
\ No newline at end of file
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Copy.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Copy.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Copy.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/Copy.java Tue Sep 13 13:19:26 2011
@@ -16,17 +16,10 @@
*/
package org.apache.jackrabbit.jcr2spi.operation;
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
+import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
import org.apache.jackrabbit.spi.Path;
import javax.jcr.RepositoryException;
-import javax.jcr.AccessDeniedException;
-import javax.jcr.ItemExistsException;
-import javax.jcr.NoSuchWorkspaceException;
-import javax.jcr.UnsupportedRepositoryOperationException;
-import javax.jcr.nodetype.ConstraintViolationException;
-import javax.jcr.lock.LockException;
-import javax.jcr.version.VersionException;
/**
* {@code Copy}...
@@ -34,9 +27,9 @@ import javax.jcr.version.VersionExceptio
public class Copy extends AbstractCopy {
private Copy(Path srcPath, Path destPath, String srcWorkspaceName,
- ManagerProvider srcMgrProvider, ManagerProvider destMgrProvider) throws RepositoryException {
+ HierarchyManager srcHierarchyManager, HierarchyManager destHierarchyManager) throws RepositoryException {
- super(srcPath, destPath, srcWorkspaceName, srcMgrProvider, destMgrProvider);
+ super(srcPath, destPath, srcWorkspaceName, srcHierarchyManager, destHierarchyManager);
}
//----------------------------------------------------------< Operation >---
@@ -53,10 +46,9 @@ public class Copy extends AbstractCopy
//------------------------------------------------------------< Factory >---
- public static Operation create(Path srcPath, Path destPath, String srcWorkspaceName, ManagerProvider srcMgrProvider,
- ManagerProvider destMgrProvider) throws RepositoryException {
-
- Copy cp = new Copy(srcPath, destPath, srcWorkspaceName, srcMgrProvider, destMgrProvider);
- return cp;
+ public static Operation create(Path srcPath, Path destPath, String srcWorkspaceName,
+ HierarchyManager srcHierarchyManager, HierarchyManager destHierarchyManager) throws RepositoryException {
+
+ return new Copy(srcPath, destPath, srcWorkspaceName, srcHierarchyManager, destHierarchyManager);
}
}
\ No newline at end of file
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryImpl.java Tue Sep 13 13:19:26 2011
@@ -16,36 +16,28 @@
*/
package org.apache.jackrabbit.jcr2spi.query;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Arrays;
-import java.util.Collection;
+import org.apache.jackrabbit.jcr2spi.ManagerProvider;
+import org.apache.jackrabbit.spi.Path;
+import org.apache.jackrabbit.spi.QValue;
+import org.apache.jackrabbit.spi.QueryInfo;
+import org.apache.jackrabbit.spi.commons.conversion.NameException;
+import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
+import org.apache.jackrabbit.spi.commons.name.NameConstants;
+import org.apache.jackrabbit.spi.commons.value.ValueFormat;
-import javax.jcr.ItemExistsException;
import javax.jcr.ItemNotFoundException;
import javax.jcr.Node;
import javax.jcr.PathNotFoundException;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
import javax.jcr.Value;
-import javax.jcr.lock.LockException;
-import javax.jcr.nodetype.ConstraintViolationException;
import javax.jcr.query.InvalidQueryException;
import javax.jcr.query.Query;
import javax.jcr.query.QueryResult;
-import javax.jcr.version.VersionException;
-
-import org.apache.jackrabbit.jcr2spi.ItemManager;
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
-import org.apache.jackrabbit.jcr2spi.WorkspaceManager;
-import org.apache.jackrabbit.spi.Path;
-import org.apache.jackrabbit.spi.QueryInfo;
-import org.apache.jackrabbit.spi.QValue;
-import org.apache.jackrabbit.spi.commons.conversion.NameException;
-import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
-import org.apache.jackrabbit.spi.commons.name.NameConstants;
-import org.apache.jackrabbit.spi.commons.value.ValueFormat;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
/**
* Provides the default implementation for a JCR query.
@@ -63,11 +55,6 @@ public class QueryImpl implements Query
private final ManagerProvider mgrProvider;
/**
- * The item manager of the session that executes this query.
- */
- private final ItemManager itemManager;
-
- /**
* The query statement
*/
private final String statement;
@@ -84,11 +71,6 @@ public class QueryImpl implements Query
private Node node;
/**
- * The WorkspaceManager used to execute queries.
- */
- private final WorkspaceManager wspManager;
-
- /**
* The maximum result size
*/
private long limit = -1;
@@ -114,8 +96,6 @@ public class QueryImpl implements Query
*
* @param session the session that created this query.
* @param mgrProvider the manager provider.
- * @param itemMgr the item manager of that session.
- * @param wspManager the workspace manager that belongs to the session.
* @param statement the query statement.
* @param language the language of the query statement.
* @param node the node from where the query was read or
@@ -123,25 +103,25 @@ public class QueryImpl implements Query
* query.
* @throws InvalidQueryException if the query is invalid.
*/
- public QueryImpl(Session session, ManagerProvider mgrProvider, ItemManager itemMgr, WorkspaceManager wspManager,
- String statement, String language, Node node) throws RepositoryException {
+ public QueryImpl(Session session, ManagerProvider mgrProvider, String statement, String language, Node node)
+ throws RepositoryException {
this.session = session;
this.mgrProvider = mgrProvider;
- itemManager = itemMgr;
this.statement = statement;
this.language = language;
- this.wspManager = wspManager;
- varNames = Arrays.asList(this.wspManager.checkQueryStatement(
- statement, language, getNamespaceMappings()));
+ varNames = Arrays.asList(mgrProvider.getWorkspaceManager().
+ checkQueryStatement(statement, language, getNamespaceMappings()));
+
this.node = node;
}
@Override
public QueryResult execute() throws RepositoryException {
- QueryInfo qI = wspManager.executeQuery(
- statement, language, getNamespaceMappings(), limit, offset, boundValues);
- return new QueryResultImpl(itemManager, mgrProvider, qI);
+ QueryInfo qI = mgrProvider.getWorkspaceManager().
+ executeQuery(statement, language, getNamespaceMappings(), limit, offset, boundValues);
+
+ return new QueryResultImpl(mgrProvider, qI);
}
/***
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryManagerImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryManagerImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryManagerImpl.java Tue Sep 13 13:19:26 2011
@@ -16,6 +16,14 @@
*/
package org.apache.jackrabbit.jcr2spi.query;
+import org.apache.jackrabbit.commons.query.QueryObjectModelBuilder;
+import org.apache.jackrabbit.commons.query.QueryObjectModelBuilderRegistry;
+import org.apache.jackrabbit.jcr2spi.ManagerProvider;
+import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
+import org.apache.jackrabbit.spi.commons.name.NameConstants;
+import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelFactoryImpl;
+import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelTree;
+
import javax.jcr.Node;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
@@ -26,16 +34,6 @@ import javax.jcr.query.QueryManager;
import javax.jcr.query.qom.QueryObjectModel;
import javax.jcr.query.qom.QueryObjectModelFactory;
-import org.apache.jackrabbit.commons.query.QueryObjectModelBuilder;
-import org.apache.jackrabbit.commons.query.QueryObjectModelBuilderRegistry;
-import org.apache.jackrabbit.jcr2spi.ItemManager;
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
-import org.apache.jackrabbit.jcr2spi.WorkspaceManager;
-import org.apache.jackrabbit.spi.commons.conversion.NamePathResolver;
-import org.apache.jackrabbit.spi.commons.name.NameConstants;
-import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelFactoryImpl;
-import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelTree;
-
/**
* This class implements the {@link QueryManager} interface.
*/
@@ -57,41 +55,24 @@ public class QueryManagerImpl implements
private final ManagerProvider mgrProvider;
/**
- * The {@code ItemManager} of for item retrieval in search results
- */
- private final ItemManager itemMgr;
-
- /**
- * The {@code WorkspaceManager} where queries are executed.
- */
- private final WorkspaceManager wspManager;
-
- /**
* Creates a new {@code QueryManagerImpl} for the passed
* {@code Session}.
*
* @param session the current session.
* @param mgrProvider the manager provider.
- * @param itemMgr the item manager of the current session.
- * @param wspManager the workspace manager.
* @throws RepositoryException if an error occurs while initializing this
* query manager.
*/
- public QueryManagerImpl(Session session, ManagerProvider mgrProvider, ItemManager itemMgr,
- WorkspaceManager wspManager) throws RepositoryException {
-
+ public QueryManagerImpl(Session session, ManagerProvider mgrProvider) throws RepositoryException {
this.session = session;
valueFactory = mgrProvider.getJcrValueFactory();
this.mgrProvider = mgrProvider;
- this.itemMgr = itemMgr;
- this.wspManager = wspManager;
}
@Override
public Query createQuery(String statement, String language) throws RepositoryException {
checkIsAlive();
- return new QueryImpl(session, mgrProvider, itemMgr, wspManager,
- statement, language, null);
+ return new QueryImpl(session, mgrProvider, statement, language, null);
}
@Override
@@ -113,14 +94,13 @@ public class QueryManagerImpl implements
QueryObjectModelBuilder builder = QueryObjectModelBuilderRegistry.getQueryObjectModelBuilder(language);
return builder.createQueryObjectModel(statement, qomFactory, valueFactory);
} else {
- return new QueryImpl(session, mgrProvider, itemMgr, wspManager,
- statement, language, node);
+ return new QueryImpl(session, mgrProvider, statement, language, node);
}
}
@Override
public String[] getSupportedQueryLanguages() throws RepositoryException {
- return wspManager.getSupportedQueryLanguages();
+ return mgrProvider.getWorkspaceManager().getSupportedQueryLanguages();
}
@Override
@@ -154,8 +134,7 @@ public class QueryManagerImpl implements
@Override
protected QueryObjectModel createQuery(QueryObjectModelTree qomTree) throws RepositoryException {
- return new QueryObjectModelImpl(session, mgrProvider, itemMgr,
- wspManager, qomTree, node);
+ return new QueryObjectModelImpl(session, mgrProvider, qomTree, node);
}
}
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryObjectModelImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryObjectModelImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryObjectModelImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryObjectModelImpl.java Tue Sep 13 13:19:26 2011
@@ -16,16 +16,14 @@
*/
package org.apache.jackrabbit.jcr2spi.query;
-import javax.jcr.ItemExistsException;
-import javax.jcr.ItemNotFoundException;
+import org.apache.jackrabbit.commons.query.QueryObjectModelBuilderRegistry;
+import org.apache.jackrabbit.jcr2spi.ManagerProvider;
+import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelTree;
+
import javax.jcr.Node;
-import javax.jcr.PathNotFoundException;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import javax.jcr.UnsupportedRepositoryOperationException;
import javax.jcr.Value;
-import javax.jcr.lock.LockException;
-import javax.jcr.nodetype.ConstraintViolationException;
import javax.jcr.query.InvalidQueryException;
import javax.jcr.query.Query;
import javax.jcr.query.QueryResult;
@@ -34,13 +32,6 @@ import javax.jcr.query.qom.Constraint;
import javax.jcr.query.qom.Ordering;
import javax.jcr.query.qom.QueryObjectModel;
import javax.jcr.query.qom.Source;
-import javax.jcr.version.VersionException;
-
-import org.apache.jackrabbit.commons.query.QueryObjectModelBuilderRegistry;
-import org.apache.jackrabbit.jcr2spi.ItemManager;
-import org.apache.jackrabbit.jcr2spi.ManagerProvider;
-import org.apache.jackrabbit.jcr2spi.WorkspaceManager;
-import org.apache.jackrabbit.spi.commons.query.qom.QueryObjectModelTree;
/**
* {@code QueryObjectModelImpl} implements the jcr2spi query object model.
@@ -52,11 +43,10 @@ public class QueryObjectModelImpl extend
*/
private final QueryObjectModelTree qomTree;
- public QueryObjectModelImpl(Session session, ManagerProvider mgrProvider, ItemManager itemMgr,
- WorkspaceManager wspManager, QueryObjectModelTree qomTree, Node node) throws RepositoryException {
+ public QueryObjectModelImpl(Session session, ManagerProvider mgrProvider, QueryObjectModelTree qomTree, Node node)
+ throws RepositoryException {
- super(session, mgrProvider, itemMgr, wspManager,
- getSQL2ForQOM(qomTree), Query.JCR_SQL2, node);
+ super(session, mgrProvider, getSQL2ForQOM(qomTree), Query.JCR_SQL2, node);
this.qomTree = qomTree;
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryResultImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryResultImpl.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryResultImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/query/QueryResultImpl.java Tue Sep 13 13:19:26 2011
@@ -16,7 +16,6 @@
*/
package org.apache.jackrabbit.jcr2spi.query;
-import org.apache.jackrabbit.jcr2spi.ItemManager;
import org.apache.jackrabbit.jcr2spi.ManagerProvider;
import org.apache.jackrabbit.spi.Name;
import org.apache.jackrabbit.spi.QueryInfo;
@@ -33,11 +32,6 @@ import javax.jcr.query.RowIterator;
class QueryResultImpl implements QueryResult {
/**
- * The item manager of the session executing the query
- */
- private final ItemManager itemMgr;
-
- /**
* Provides various managers.
*/
private final ManagerProvider mgrProvider;
@@ -50,12 +44,10 @@ class QueryResultImpl implements QueryRe
/**
* Creates a new query result.
*
- * @param itemMgr the item manager of the session executing the query.
* @param mgrProvider the manager provider.
* @param queryInfo the spi query result.
*/
- QueryResultImpl(ItemManager itemMgr, ManagerProvider mgrProvider, QueryInfo queryInfo) {
- this.itemMgr = itemMgr;
+ QueryResultImpl(ManagerProvider mgrProvider, QueryInfo queryInfo) {
this.mgrProvider = mgrProvider;
this.queryInfo = queryInfo;
}
@@ -84,7 +76,7 @@ class QueryResultImpl implements QueryRe
@Override
public RowIterator getRows() throws RepositoryException {
return new RowIteratorImpl(queryInfo, mgrProvider.getNamePathResolver(), mgrProvider.getJcrValueFactory(),
- itemMgr, mgrProvider.getHierarchyManager());
+ mgrProvider.getItemManager(), mgrProvider.getHierarchyManager());
}
/**
@@ -92,6 +84,6 @@ class QueryResultImpl implements QueryRe
* @return a node iterator over the result nodes.
*/
private ScoreNodeIterator getNodeIterator() {
- return new NodeIteratorImpl(itemMgr, mgrProvider.getHierarchyManager(), queryInfo);
+ return new NodeIteratorImpl(mgrProvider.getItemManager(), mgrProvider.getHierarchyManager(), queryInfo);
}
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemStateValidator.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemStateValidator.java?rev=1170170&r1=1170169&r2=1170170&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemStateValidator.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemStateValidator.java Tue Sep 13 13:19:26 2011
@@ -24,11 +24,10 @@ import org.apache.jackrabbit.jcr2spi.sec
import org.apache.jackrabbit.jcr2spi.util.LogUtil;
import org.apache.jackrabbit.spi.Name;
import org.apache.jackrabbit.spi.Path;
-import org.apache.jackrabbit.spi.PathFactory;
import org.apache.jackrabbit.spi.QItemDefinition;
import org.apache.jackrabbit.spi.QNodeDefinition;
-import org.apache.jackrabbit.spi.QPropertyDefinition;
import org.apache.jackrabbit.spi.QNodeTypeDefinition;
+import org.apache.jackrabbit.spi.QPropertyDefinition;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -95,16 +94,14 @@ public class ItemStateValidator {
* manager provider
*/
private final ManagerProvider mgrProvider;
- private final PathFactory pathFactory;
/**
* Creates a new {@code ItemStateValidator} instance.
*
* @param mgrProvider manager provider
*/
- public ItemStateValidator(ManagerProvider mgrProvider, PathFactory pathFactory) {
+ public ItemStateValidator(ManagerProvider mgrProvider) {
this.mgrProvider = mgrProvider;
- this.pathFactory = pathFactory;
}
//-------------------------------------------------< misc. helper methods >
@@ -252,7 +249,7 @@ public class ItemStateValidator {
// access restriction on prop.
if ((options & CHECK_ACCESS) == CHECK_ACCESS) {
// make sure current session is granted write access on new prop
- Path relPath = pathFactory.create(propertyName);
+ Path relPath = mgrProvider.getPathFactory().create(propertyName);
if (!mgrProvider.getAccessManager().isGranted(parentState, relPath, new
String[] {AccessManager.SET_PROPERTY_ACTION})) {
@@ -314,10 +311,10 @@ public class ItemStateValidator {
// access restrictions on new node
if ((options & CHECK_ACCESS) == CHECK_ACCESS) {
// make sure current session is granted write access on parent node
- Path relPath = pathFactory.create(nodeName);
+ Path relPath = mgrProvider.getPathFactory().create(nodeName);
if (!mgrProvider.getAccessManager().isGranted(parentState, relPath, new String[] {AccessManager.ADD_NODE_ACTION})) {
- throw new AccessDeniedException(safeGetJCRPath(parentState) + ": not allowed to add child node '" +
- nodeName + '\'');
+ throw new AccessDeniedException(safeGetJCRPath(parentState) +
+ ": not allowed to add child node '" + nodeName + '\'');
}
}
// node type constraints