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/14 19:48:09 UTC
svn commit: r1170733 - in /jackrabbit/sandbox/jackrabbit-mk:
jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/
jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/
jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbi...
Author: mduerig
Date: Wed Sep 14 17:48:09 2011
New Revision: 1170733
URL: http://svn.apache.org/viewvc?rev=1170733&view=rev
Log:
Microkernel based Jackrabbit prototype (WIP)
refactor: reduce casting
Modified:
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemLifeCycleListener.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemManagerImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NodeImpl.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/WorkspaceManager.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntryImpl.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AddNode.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/RemoveVersion.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/TransientOperation.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/xml/SessionImporter.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemLifeCycleListener.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemLifeCycleListener.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemLifeCycleListener.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemLifeCycleListener.java Wed Sep 14 17:48:09 2011
@@ -23,8 +23,6 @@ import javax.jcr.Item;
/**
* The {@code ItemLifeCycleListener} interface allows an implementing
* object to be informed about changes on an {@code Item} instance.
- *
- * @see ItemImpl#addLifeCycleListener
*/
public interface ItemLifeCycleListener {
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemManagerImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemManagerImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/ItemManagerImpl.java Wed Sep 14 17:48:09 2011
@@ -41,7 +41,6 @@ import javax.jcr.PathNotFoundException;
import javax.jcr.Property;
import javax.jcr.PropertyIterator;
import javax.jcr.RepositoryException;
-import javax.jcr.Workspace;
import java.util.Iterator;
/**
@@ -77,10 +76,8 @@ public class ItemManagerImpl implements
// start listening to creation of ItemStates upon batch-reading in the
// workspace item state factory.
- Workspace wsp = session.getWorkspace();
- if (wsp instanceof WorkspaceImpl) {
- ((WorkspaceImpl) wsp).getItemStateFactory().addCreationListener(this);
- }
+ WorkspaceImpl wsp = session.getWorkspace();
+ wsp.getItemStateFactory().addCreationListener(this);
}
//--------------------------------------------------------< ItemManager >---
@@ -88,10 +85,8 @@ public class ItemManagerImpl implements
@Override
public void dispose() {
// stop listening
- Workspace wsp = session.getWorkspace();
- if (wsp instanceof WorkspaceImpl) {
- ((WorkspaceImpl) wsp).getItemStateFactory().removeCreationListener(this);
- }
+ WorkspaceImpl wsp = session.getWorkspace();
+ wsp.getItemStateFactory().removeCreationListener(this);
// ... and clear the cache.
itemCache.clear();
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NodeImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NodeImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NodeImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/NodeImpl.java Wed Sep 14 17:48:09 2011
@@ -912,7 +912,7 @@ public class NodeImpl extends ItemImpl i
}
Operation op = Update.create(getNodeState(), srcWorkspaceName);
- ((WorkspaceImpl)session.getWorkspace()).getUpdateableItemStateManager().execute(op);
+ session.getWorkspace().getUpdateableItemStateManager().execute(op);
}
@Override
@@ -1328,11 +1328,11 @@ public class NodeImpl extends ItemImpl i
}
// validation check are performed by item state manager
// NOTE: uuid is generated while creating new state.
- Operation an = AddNode.create(getNodeState(), nodeName, nodeTypeName, null);
+ AddNode an = AddNode.create(getNodeState(), nodeName, nodeTypeName, null);
session.getSessionItemStateManager().execute(an);
// finally retrieve the new node
- List<ItemState> addedStates = ((AddNode) an).getAddedStates();
+ List<ItemState> addedStates = an.getAddedStates();
ItemState nState = addedStates.get(0);
return (Node) getItemManager().getItem(nState.getHierarchyEntry());
}
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=1170733&r1=1170732&r2=1170733&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 Wed Sep 14 17:48:09 2011
@@ -22,7 +22,6 @@ import org.apache.jackrabbit.commons.Abs
import org.apache.jackrabbit.jcr2spi.config.CacheBehaviour;
import org.apache.jackrabbit.jcr2spi.config.RepositoryConfig;
import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyEntry;
-import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManagerImpl;
import org.apache.jackrabbit.jcr2spi.hierarchy.NodeEntry;
import org.apache.jackrabbit.jcr2spi.lock.LockStateManager;
@@ -60,7 +59,6 @@ import org.apache.jackrabbit.spi.commons
import org.apache.jackrabbit.spi.commons.value.ValueFactoryQImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.xml.sax.ContentHandler;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
@@ -80,7 +78,6 @@ import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.UnsupportedRepositoryOperationException;
import javax.jcr.ValueFactory;
-import javax.jcr.Workspace;
import javax.jcr.nodetype.NodeTypeManager;
import javax.jcr.retention.RetentionManager;
import javax.jcr.security.AccessControlManager;
@@ -150,12 +147,12 @@ public class SessionImpl extends Abstrac
itemStateManager = new SessionItemStateManager(workspace.getUpdateableItemStateManager(), getValidator(),
getQValueFactory(), workspace.getItemStateFactory(), this);
- HierarchyManager hMgr = getHierarchyManager();
+ HierarchyManagerImpl hMgr = getHierarchyManager();
ItemCache cache = new ItemCacheImpl(this.config.getItemCacheSize());
itemManager = new ItemManagerImpl(hMgr, this, cache);
if (hMgr instanceof HierarchyManagerImpl) {
- ((HierarchyManagerImpl) hMgr).setResolver(npResolver);
+ hMgr.setResolver(npResolver);
}
}
@@ -210,7 +207,7 @@ public class SessionImpl extends Abstrac
* @see javax.jcr.Session#getWorkspace()
*/
@Override
- public Workspace getWorkspace() {
+ public WorkspaceImpl getWorkspace() {
return workspace;
}
@@ -388,7 +385,7 @@ public class SessionImpl extends Abstrac
* @see Session#getImportContentHandler(String, int)
*/
@Override
- public ContentHandler getImportContentHandler(String parentAbsPath, int uuidBehavior) throws RepositoryException {
+ public ImportHandler getImportContentHandler(String parentAbsPath, int uuidBehavior) throws RepositoryException {
checkSupportedOption(Repository.LEVEL_2_SUPPORTED);
checkIsAlive();
@@ -408,7 +405,7 @@ public class SessionImpl extends Abstrac
@Override
public void importXML(String parentAbsPath, InputStream in, int uuidBehavior) throws IOException, RepositoryException {
// NOTE: checks are performed by 'getImportContentHandler'
- ImportHandler handler = (ImportHandler) getImportContentHandler(parentAbsPath, uuidBehavior);
+ ImportHandler handler = getImportContentHandler(parentAbsPath, uuidBehavior);
try {
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setNamespaceAware(true);
@@ -722,7 +719,7 @@ public class SessionImpl extends Abstrac
}
@Override
- public final HierarchyManager getHierarchyManager() {
+ public final HierarchyManagerImpl getHierarchyManager() {
return workspace.getHierarchyManager();
}
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=1170733&r1=1170732&r2=1170733&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 Wed Sep 14 17:48:09 2011
@@ -18,7 +18,7 @@ package org.apache.jackrabbit.jcr2spi;
import org.apache.commons.io.IOUtils;
import org.apache.jackrabbit.jcr2spi.config.RepositoryConfig;
-import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
+import org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManagerImpl;
import org.apache.jackrabbit.jcr2spi.lock.LockManagerImpl;
import org.apache.jackrabbit.jcr2spi.lock.LockStateManager;
import org.apache.jackrabbit.jcr2spi.nodetype.EffectiveNodeTypeProvider;
@@ -155,7 +155,7 @@ public class WorkspaceImpl implements Wo
// create session on other workspace for current subject
// (may throw NoSuchWorkspaceException and AccessDeniedException)
srcSession = session.switchWorkspace(srcWorkspace);
- WorkspaceImpl srcWsp = (WorkspaceImpl) srcSession.getWorkspace();
+ WorkspaceImpl srcWsp = srcSession.getWorkspace();
// do cross-workspace copy
Operation op = Copy.create(srcPath, destPath, srcWsp.getName(), srcWsp.getHierarchyManager(),
@@ -199,7 +199,7 @@ public class WorkspaceImpl implements Wo
// create session on other workspace for current subject
// (may throw NoSuchWorkspaceException and AccessDeniedException)
srcSession = session.switchWorkspace(srcWorkspace);
- WorkspaceImpl srcWsp = (WorkspaceImpl) srcSession.getWorkspace();
+ WorkspaceImpl srcWsp = srcSession.getWorkspace();
// do clone
Operation op = Clone.create(srcPath, destPath, srcWsp.getName(), removeExisting,
@@ -351,7 +351,7 @@ public class WorkspaceImpl implements Wo
}
@Override
- public HierarchyManager getHierarchyManager() {
+ public HierarchyManagerImpl getHierarchyManager() {
return wspManager.getHierarchyManager();
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceManager.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceManager.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/WorkspaceManager.java Wed Sep 14 17:48:09 2011
@@ -118,7 +118,7 @@ public final class WorkspaceManager impl
private final PathFactory pathFactory;
private final ItemStateFactory isf;
- private final HierarchyManager hierarchyManager;
+ private final HierarchyManagerImpl hierarchyManager;
private final CacheBehaviour cacheBehaviour;
private final int pollTimeout;
@@ -211,7 +211,7 @@ public final class WorkspaceManager impl
return ntRegistry;
}
- public HierarchyManager getHierarchyManager() {
+ public HierarchyManagerImpl getHierarchyManager() {
return hierarchyManager;
}
@@ -463,7 +463,7 @@ public final class WorkspaceManager impl
* @return a new instance of {@code HierarchyManager}.
* @throws javax.jcr.RepositoryException If an error occurs.
*/
- private HierarchyManager createHierarchyManager(TransientItemStateFactory transientISF, IdFactory idFactory) {
+ private HierarchyManagerImpl createHierarchyManager(TransientItemStateFactory transientISF, IdFactory idFactory) {
return new HierarchyManagerImpl(transientISF, idFactory, getPathFactory());
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntryImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntryImpl.java Wed Sep 14 17:48:09 2011
@@ -243,10 +243,12 @@ abstract class HierarchyEntryImpl implem
*/
@Override
public synchronized void setItemState(ItemState state) {
+ assert state != null;
+ assert denotesNode() == state.isNode();
+
ItemState currentState = internalGetItemState();
- if (state == null || state == currentState || denotesNode() != state.isNode()) {
- throw new IllegalArgumentException();
- }
+ assert state != currentState;
+
if (currentState == null) {
// not connected yet to an item state. either a new entry or
// an unresolved hierarchy entry.
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntryImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntryImpl.java Wed Sep 14 17:48:09 2011
@@ -82,7 +82,7 @@ public class NodeEntryImpl extends Hiera
/**
* Insertion-ordered collection of NodeEntry objects.
*/
- private final ChildNodeEntries childNodeEntries;
+ private final ChildNodeEntriesImpl childNodeEntries;
/**
* Map used to remember transiently removed or moved childNodeEntries, that
@@ -617,7 +617,7 @@ public class NodeEntryImpl extends Hiera
@Override
public void setNodeEntries(Iterator<ChildInfo> childInfos) throws RepositoryException {
if (childNodeAttic.isEmpty()) {
- ((ChildNodeEntriesImpl) childNodeEntries).update(childInfos);
+ childNodeEntries.update(childInfos);
} else {
// filter those entries that have been moved to the attic.
List<ChildInfo> remaining = new ArrayList<ChildInfo>();
@@ -627,7 +627,7 @@ public class NodeEntryImpl extends Hiera
remaining.add(ci);
}
}
- ((ChildNodeEntriesImpl) childNodeEntries).update(remaining.iterator());
+ childNodeEntries.update(remaining.iterator());
}
}
@@ -1347,7 +1347,10 @@ public class NodeEntryImpl extends Hiera
}
if (getStatus() == Status.EXISTING_MODIFIED) {
for (NodeEntry child : siblings) {
- if (!EntryValidation.isValidNodeEntry(child) || ((NodeEntryImpl) child).revertInfo != null && ((NodeEntryImpl) child).revertInfo.oldIndex == childIndex) {
+ if (!EntryValidation.isValidNodeEntry(child) ||
+ ((NodeEntryImpl) child).revertInfo != null &&
+ ((NodeEntryImpl) child).revertInfo.oldIndex == childIndex) {
+
return true;
}
}
@@ -1399,7 +1402,7 @@ public class NodeEntryImpl extends Hiera
case PERSISTED:
// for autocreated/protected props, mark to be reloaded
// upon next access.
- PropertyState addedState = (PropertyState) ((PropertyEntryImpl) pe).internalGetItemState();
+ PropertyState addedState = (PropertyState) ((HierarchyEntryImpl) pe).internalGetItemState();
addedState.setStatus(Status.EXISTING);
QPropertyDefinition pd = addedState.getDefinition();
if (pd.isAutoCreated() || pd.isProtected()) {
@@ -1603,8 +1606,8 @@ public class NodeEntryImpl extends Hiera
oldParent = parent;
oldName = name;
oldIndex = getIndex();
- oldSuccessor = ((ChildNodeEntriesImpl) parent.childNodeEntries).getNext(NodeEntryImpl.this);
- oldPredecessor = ((ChildNodeEntriesImpl) parent.childNodeEntries).getPrevious(NodeEntryImpl.this);
+ oldSuccessor = parent.childNodeEntries.getNext(NodeEntryImpl.this);
+ oldPredecessor = parent.childNodeEntries.getPrevious(NodeEntryImpl.this);
}
private boolean isMoved() {
@@ -1614,7 +1617,7 @@ public class NodeEntryImpl extends Hiera
private void dispose(boolean persisted) {
if (!persisted) {
NodeEntry ne = NodeEntryImpl.this;
- ChildNodeEntriesImpl parentCNEs = (ChildNodeEntriesImpl) parent.childNodeEntries;
+ ChildNodeEntriesImpl parentCNEs = parent.childNodeEntries;
parentCNEs.reorderAfter(ne, revertInfo.oldPredecessor);
try {
if (oldIndex != ne.getIndex()) {
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntryImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntryImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntryImpl.java Wed Sep 14 17:48:09 2011
@@ -100,9 +100,8 @@ public class PropertyEntryImpl extends H
*/
@Override
public void complete(Operation operation) throws RepositoryException {
- if (!(operation instanceof SetPropertyValue)) {
- throw new IllegalArgumentException();
- }
+ assert operation instanceof SetPropertyValue;
+
SetPropertyValue op = (SetPropertyValue) operation;
if (op.getPropertyState().getHierarchyEntry() != this) {
throw new IllegalArgumentException();
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AddNode.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AddNode.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AddNode.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/AddNode.java Wed Sep 14 17:48:09 2011
@@ -129,7 +129,7 @@ public class AddNode extends TransientOp
* @param uuid
* @return a new {@code AddNode} operation.
*/
- public static Operation create(NodeState parentState, Name nodeName,
+ public static AddNode create(NodeState parentState, Name nodeName,
Name nodeTypeName, String uuid) throws RepositoryException {
// make sure the parent hierarchy entry has its child entries loaded
// in order to be able to detect conflicts.
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/RemoveVersion.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/RemoveVersion.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/RemoveVersion.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/RemoveVersion.java Wed Sep 14 17:48:09 2011
@@ -18,7 +18,6 @@ package org.apache.jackrabbit.jcr2spi.op
import org.apache.jackrabbit.jcr2spi.hierarchy.NodeEntry;
import org.apache.jackrabbit.jcr2spi.hierarchy.PropertyEntry;
-import org.apache.jackrabbit.jcr2spi.state.ItemState;
import org.apache.jackrabbit.jcr2spi.state.NodeState;
import org.apache.jackrabbit.jcr2spi.version.VersionManager;
import org.slf4j.Logger;
@@ -35,10 +34,10 @@ public class RemoveVersion extends Abstr
private NodeEntry versionableEntry;
- private RemoveVersion(ItemState removeState, NodeState parent, VersionManager mgr) {
+ private RemoveVersion(NodeState removeState, NodeState parent, VersionManager mgr) {
super(removeState, parent);
try {
- versionableEntry = mgr.getVersionableNodeEntry((NodeState) removeState);
+ versionableEntry = mgr.getVersionableNodeEntry(removeState);
} catch (RepositoryException e) {
log.warn("Failed to retrieve the hierarchy entry of the versionable node.", e);
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/TransientOperation.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/TransientOperation.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/TransientOperation.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/operation/TransientOperation.java Wed Sep 14 17:48:09 2011
@@ -23,6 +23,7 @@ import org.apache.jackrabbit.jcr2spi.sta
*/
public abstract class TransientOperation extends AbstractOperation {
static final int NO_OPTIONS = ItemStateValidator.CHECK_NONE;
+
static final int DEFAULT_OPTIONS = ItemStateValidator.CHECK_LOCK
| ItemStateValidator.CHECK_COLLISION
| ItemStateValidator.CHECK_VERSIONING
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java Wed Sep 14 17:48:09 2011
@@ -125,9 +125,8 @@ public class PropertyState extends ItemS
public MergeResult merge(ItemState another, boolean keepChanges) {
boolean modified = false;
if (another != null && another != this) {
- if (another.isNode()) {
- throw new IllegalArgumentException("Attempt to merge property state with node state.");
- }
+ assert !another.isNode();
+
PropertyDiffer result = new PropertyDiffer(data, ((PropertyState) another).data);
// reset the pInfo to point to the pInfo of another state.
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/xml/SessionImporter.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/xml/SessionImporter.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/xml/SessionImporter.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/xml/SessionImporter.java Wed Sep 14 17:48:09 2011
@@ -422,10 +422,10 @@ public class SessionImporter implements
// use default node type
ntName = def.getDefaultPrimaryType();
}
- Operation an = AddNode.create(parent, nodeInfo.getName(), ntName, nodeInfo.getUUID());
+ AddNode an = AddNode.create(parent, nodeInfo.getName(), ntName, nodeInfo.getUUID());
stateMgr.execute(an);
// retrieve id of state that has been created during execution of AddNode
- NodeState childState = (NodeState) ((AddNode) an).getAddedStates().get(0);
+ NodeState childState = (NodeState) an.getAddedStates().get(0);
// and set mixin types
Name[] mixinNames = nodeInfo.getMixinNames();
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java?rev=1170733&r1=1170732&r2=1170733&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-spi2microkernel/src/main/java/org/apache/jackrabbit/spi2microkernel/RepositoryServiceImpl.java Wed Sep 14 17:48:09 2011
@@ -51,9 +51,9 @@ import org.apache.jackrabbit.spi.commons
import org.apache.jackrabbit.spi.commons.QNodeDefinitionImpl;
import org.apache.jackrabbit.spi.commons.SessionInfoImpl;
import org.apache.jackrabbit.spi.commons.batch.ConsolidatingChangeLog;
-import org.apache.jackrabbit.spi.commons.util.Iterators;
import org.apache.jackrabbit.spi.commons.name.NameConstants;
import org.apache.jackrabbit.spi.commons.util.Function1;
+import org.apache.jackrabbit.spi.commons.util.Iterators;
import org.apache.jackrabbit.spi.commons.util.Predicate1;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
@@ -69,7 +69,6 @@ import javax.jcr.PathNotFoundException;
import javax.jcr.PropertyType;
import javax.jcr.RepositoryException;
import javax.jcr.UnsupportedRepositoryOperationException;
-import javax.jcr.query.InvalidQueryException;
import javax.jcr.query.Query;
import javax.jcr.version.OnParentVersionAction;
import java.io.IOException;
@@ -581,7 +580,7 @@ public class RepositoryServiceImpl exten
@Override
public String[] checkQueryStatement(SessionInfo sessionInfo, String statement,
- String language, Map<String, String> namespaces) throws InvalidQueryException, RepositoryException {
+ String language, Map<String, String> namespaces) throws RepositoryException {
checkSessionInfo(sessionInfo);
return queryProcessor.checkQueryStatement(statement, language, namespaces);