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/23 11:42:45 UTC
svn commit: r1174620 - in
/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi:
hierarchy/ state/
Author: mduerig
Date: Fri Sep 23 09:42:44 2011
New Revision: 1174620
URL: http://svn.apache.org/viewvc?rev=1174620&view=rev
Log:
Microkernel based Jackrabbit prototype (WIP)
refactor: pull getId and getWorkspaceId up to base class
Modified:
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntry.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntry.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntry.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemState.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/NodeState.java
jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/PropertyState.java
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntry.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntry.java?rev=1174620&r1=1174619&r2=1174620&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntry.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/HierarchyEntry.java Fri Sep 23 09:42:44 2011
@@ -22,6 +22,7 @@ import org.apache.jackrabbit.jcr2spi.sta
import org.apache.jackrabbit.jcr2spi.state.Status;
import org.apache.jackrabbit.jcr2spi.state.TransientItemStateFactory;
import org.apache.jackrabbit.spi.IdFactory;
+import org.apache.jackrabbit.spi.ItemId;
import org.apache.jackrabbit.spi.ItemInfoCache;
import org.apache.jackrabbit.spi.Name;
import org.apache.jackrabbit.spi.Path;
@@ -190,6 +191,22 @@ public abstract class HierarchyEntry<STA
public abstract void complete(Operation operation) throws RepositoryException;
/**
+ * @return the {@code ItemId} of this child node entry.
+ */
+ public abstract ItemId getId() throws RepositoryException;
+
+ /**
+ * Returns the ID that must be used for resolving this entry OR loading its
+ * children entries from the persistent layer. This is the same as
+ * {@code getId()} unless this entry or any of its ancestors has been
+ * transiently moved.
+ *
+ * @return
+ * @see #getId()
+ */
+ public abstract ItemId getWorkspaceId() throws RepositoryException;
+
+ /**
* @return the item state or {@code null} if the entry isn't resolved.
*/
STATE_TYPE internalGetItemState() {
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntry.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntry.java?rev=1174620&r1=1174619&r2=1174620&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntry.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/NodeEntry.java Fri Sep 23 09:42:44 2011
@@ -295,6 +295,7 @@ public class NodeEntry extends Hierarchy
/**
* @return the {@code NodeId} of this child node entry.
*/
+ @Override
public NodeId getId() throws RepositoryException {
return getId(false);
}
@@ -308,6 +309,7 @@ public class NodeEntry extends Hierarchy
* @return
* @see #getId()
*/
+ @Override
public NodeId getWorkspaceId() throws RepositoryException {
return getId(true);
}
@@ -324,8 +326,8 @@ public class NodeEntry extends Hierarchy
}
}
- private static NodeId buildNodeId(NodeEntry entry, PathFactory pathFactory, IdFactory idFactory,
- boolean wspId) throws RepositoryException {
+ private static NodeId buildNodeId(NodeEntry entry, PathFactory pathFactory, IdFactory idFactory, boolean wspId)
+ throws RepositoryException {
PathBuilder pathBuilder = new PathBuilder(pathFactory);
while (entry.getParent() != null && entry.getUniqueID() == null) {
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntry.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntry.java?rev=1174620&r1=1174619&r2=1174620&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntry.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/hierarchy/PropertyEntry.java Fri Sep 23 09:42:44 2011
@@ -63,8 +63,9 @@ public class PropertyEntry extends Hiera
//------------------------------------------------------< PropertyEntry >---
/**
- * @return the {@code NodeId} of this child node entry.
+ * @return the {@code PropertyId} of this child node entry.
*/
+ @Override
public PropertyId getId() throws RepositoryException {
return getIdFactory().createPropertyId(parent.getId(), getName());
}
@@ -78,6 +79,7 @@ public class PropertyEntry extends Hiera
* @return
* @see #getId()
*/
+ @Override
public PropertyId getWorkspaceId() throws RepositoryException {
return getIdFactory().createPropertyId(parent.getWorkspaceId(), getName());
}
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemState.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemState.java?rev=1174620&r1=1174619&r2=1174620&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemState.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/ItemState.java Fri Sep 23 09:42:44 2011
@@ -113,11 +113,6 @@ public abstract class ItemState<ENTRY_TY
this.definitionProvider = definitionProvider;
}
- /**
- *
- * @param parent
- * @return
- */
private static Status getInitialStatus(NodeEntry parent) {
Status status = Status.EXISTING;
// walk up hierarchy and check if any of the parents is transiently
@@ -179,7 +174,9 @@ public abstract class ItemState<ENTRY_TY
*
* @return the identifier of this item state..
*/
- public abstract ItemId getId() throws RepositoryException;
+ public ItemId getId() throws RepositoryException {
+ return getHierarchyEntry().getId();
+ }
/**
* Utility method:
@@ -188,7 +185,9 @@ public abstract class ItemState<ENTRY_TY
*
* @return the identifier of this item state..
*/
- public abstract ItemId getWorkspaceId() throws RepositoryException;
+ public ItemId getWorkspaceId() throws RepositoryException {
+ return getHierarchyEntry().getWorkspaceId();
+ }
/**
* Utility method:
Modified: jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/NodeState.java
URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/NodeState.java?rev=1174620&r1=1174619&r2=1174620&view=diff
==============================================================================
--- jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/NodeState.java (original)
+++ jackrabbit/sandbox/jackrabbit-mk/jackrabbit-jcr2spi/src/main/java/org/apache/jackrabbit/jcr2spi/state/NodeState.java Fri Sep 23 09:42:44 2011
@@ -19,7 +19,6 @@ package org.apache.jackrabbit.jcr2spi.st
import org.apache.jackrabbit.jcr2spi.hierarchy.NodeEntry;
import org.apache.jackrabbit.jcr2spi.hierarchy.PropertyEntry;
import org.apache.jackrabbit.jcr2spi.nodetype.ItemDefinitionProvider;
-import org.apache.jackrabbit.spi.ItemId;
import org.apache.jackrabbit.spi.Name;
import org.apache.jackrabbit.spi.NodeId;
import org.apache.jackrabbit.spi.NodeInfo;
@@ -106,16 +105,6 @@ public class NodeState extends ItemState
}
@Override
- public ItemId getId() throws RepositoryException {
- return getNodeId();
- }
-
- @Override
- public ItemId getWorkspaceId() throws RepositoryException {
- return getNodeEntry().getWorkspaceId();
- }
-
- @Override
public MergeResult merge(ItemState<?> another, boolean keepChanges) {
boolean modified = false;
if (another != null && another != this) {
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=1174620&r1=1174619&r2=1174620&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 Fri Sep 23 09:42:44 2011
@@ -18,7 +18,6 @@ package org.apache.jackrabbit.jcr2spi.st
import org.apache.jackrabbit.jcr2spi.hierarchy.PropertyEntry;
import org.apache.jackrabbit.jcr2spi.nodetype.ItemDefinitionProvider;
-import org.apache.jackrabbit.spi.ItemId;
import org.apache.jackrabbit.spi.PropertyInfo;
import org.apache.jackrabbit.spi.QPropertyDefinition;
import org.apache.jackrabbit.spi.QValue;
@@ -105,16 +104,6 @@ public class PropertyState extends ItemS
return false;
}
- @Override
- public ItemId getId() throws RepositoryException {
- return getHierarchyEntry().getId();
- }
-
- @Override
- public ItemId getWorkspaceId() throws RepositoryException {
- return getHierarchyEntry().getWorkspaceId();
- }
-
/**
* If {@code keepChanges} is true, this method only compares the existing
* values with the values from 'another' and returns true, if the underlying