Return-Path: X-Original-To: apmail-jackrabbit-commits-archive@www.apache.org Delivered-To: apmail-jackrabbit-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8E216B134 for ; Fri, 6 Jan 2012 11:19:50 +0000 (UTC) Received: (qmail 53632 invoked by uid 500); 6 Jan 2012 11:19:50 -0000 Delivered-To: apmail-jackrabbit-commits-archive@jackrabbit.apache.org Received: (qmail 52134 invoked by uid 500); 6 Jan 2012 11:19:40 -0000 Mailing-List: contact commits-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jackrabbit.apache.org Delivered-To: mailing list commits@jackrabbit.apache.org Received: (qmail 52086 invoked by uid 99); 6 Jan 2012 11:19:33 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Jan 2012 11:19:33 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Jan 2012 11:19:31 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id A5A382388900; Fri, 6 Jan 2012 11:19:10 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1228091 - in /jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk: MicroKernelImpl.java model/AbstractNode.java model/NodeDelta.java model/NodeDiffHandler.java model/TraversingNodeDiffHandler.java Date: Fri, 06 Jan 2012 11:19:10 -0000 To: commits@jackrabbit.apache.org From: stefan@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120106111910.A5A382388900@eris.apache.org> Author: stefan Date: Fri Jan 6 11:19:09 2012 New Revision: 1228091 URL: http://svn.apache.org/viewvc?rev=1228091&view=rev Log: flat hierarchy support (WIP): refactored child node entries collection Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/MicroKernelImpl.java jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/AbstractNode.java jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDelta.java jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDiffHandler.java jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/TraversingNodeDiffHandler.java Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/MicroKernelImpl.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/MicroKernelImpl.java?rev=1228091&r1=1228090&r2=1228091&view=diff ============================================================================== --- jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/MicroKernelImpl.java (original) +++ jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/MicroKernelImpl.java Fri Jan 6 11:19:09 2012 @@ -254,23 +254,23 @@ public class MicroKernelImpl implements } @Override - public void childNodeAdded(String childName, String id) { - addedNodes.put(id, PathUtils.concat(getCurrentPath(), childName)); + public void childNodeAdded(ChildNodeEntry added) { + addedNodes.put(added.getId(), PathUtils.concat(getCurrentPath(), added.getName())); buff.tag('+'). - key(PathUtils.concat(getCurrentPath(), childName)).object(); + key(PathUtils.concat(getCurrentPath(), added.getName())).object(); try { - toJson(buff, rep.getRevisionStore().getNode(id), Integer.MAX_VALUE, 0, -1, false); + toJson(buff, rep.getRevisionStore().getNode(added.getId()), Integer.MAX_VALUE, 0, -1, false); } catch (Exception e) { - buff.value("ERROR: failed to retrieve node " + id); + buff.value("ERROR: failed to retrieve node " + added.getId()); } buff.endObject().newline(); } @Override - public void childNodeDeleted(String childName, String id) { - removedNodes.put(id, PathUtils.concat(getCurrentPath(), childName)); + public void childNodeDeleted(ChildNodeEntry deleted) { + removedNodes.put(deleted.getId(), PathUtils.concat(getCurrentPath(), deleted.getName())); buff.tag('-'); - buff.value(PathUtils.concat(getCurrentPath(), childName)); + buff.value(PathUtils.concat(getCurrentPath(), deleted.getName())); buff.newline(); } }; @@ -318,29 +318,29 @@ public class MicroKernelImpl implements } @Override - public void childNodeAdded(String childName, String id) { - if (addedNodes.containsKey(id)) { + public void childNodeAdded(ChildNodeEntry added) { + if (addedNodes.containsKey(added.getId())) { // moved node, will be processed separately return; } buff.tag('+'). - key(PathUtils.concat(getCurrentPath(), childName)).object(); + key(PathUtils.concat(getCurrentPath(), added.getName())).object(); try { - toJson(buff, rep.getRevisionStore().getNode(id), Integer.MAX_VALUE, 0, -1, false); + toJson(buff, rep.getRevisionStore().getNode(added.getId()), Integer.MAX_VALUE, 0, -1, false); } catch (Exception e) { - buff.value("ERROR: failed to retrieve node " + id); + buff.value("ERROR: failed to retrieve node " + added.getId()); } buff.endObject().newline(); } @Override - public void childNodeDeleted(String childName, String id) { - if (addedNodes.containsKey(id)) { + public void childNodeDeleted(ChildNodeEntry deleted) { + if (addedNodes.containsKey(deleted.getId())) { // moved node, will be processed separately return; } buff.tag('-'); - buff.value(PathUtils.concat(getCurrentPath(), childName)); + buff.value(PathUtils.concat(getCurrentPath(), deleted.getName())); buff.newline(); } @@ -351,9 +351,9 @@ public class MicroKernelImpl implements for (Map.Entry entry : addedNodes.entrySet()) { buff.tag('>'). // path/to/deleted/node - key(removedNodes.get(entry.getKey())). + key(removedNodes.get(entry.getKey())). // path/to/added/node - value(entry.getValue()). + value(entry.getValue()). newline(); } } Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/AbstractNode.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/AbstractNode.java?rev=1228091&r1=1228090&r2=1228091&view=diff ============================================================================== --- jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/AbstractNode.java (original) +++ jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/AbstractNode.java Fri Jan 6 11:19:09 2012 @@ -160,17 +160,15 @@ public abstract class AbstractNode imple if (other instanceof AbstractNode) { ChildNodeEntries otherEntries = ((AbstractNode) other).childEntries; for (Iterator it = childEntries.getAdded(otherEntries); it.hasNext(); ) { - ChildNodeEntry added = it.next(); - handler.childNodeAdded(added.getName(), added.getId()); + handler.childNodeAdded(it.next()); } for (Iterator it = childEntries.getRemoved(otherEntries); it.hasNext(); ) { - ChildNodeEntry removed = it.next(); - handler.childNodeDeleted(removed.getName(), removed.getId()); + handler.childNodeDeleted(it.next()); } for (Iterator it = childEntries.getModified(otherEntries); it.hasNext(); ) { ChildNodeEntry old = it.next(); ChildNodeEntry modified = otherEntries.get(old.getName()); - handler.childNodeChanged(old.getName(), old.getId(), modified.getId()); + handler.childNodeChanged(old, modified.getId()); } return; } @@ -190,18 +188,18 @@ public abstract class AbstractNode imple set.addAll(oldEntries.keySet()); set.removeAll(newEntries.keySet()); for (String name : set) { - handler.childNodeDeleted(name, oldEntries.get(name).getId()); + handler.childNodeDeleted(oldEntries.get(name)); } set.clear(); set.addAll(newEntries.keySet()); set.removeAll(oldEntries.keySet()); for (String name : set) { - handler.childNodeAdded(name, newEntries.get(name).getId()); + handler.childNodeAdded(newEntries.get(name)); } for (ChildNodeEntry cneOld : oldEntries.values()) { ChildNodeEntry cneNew = newEntries.get(cneOld.getName()); if (cneNew != null && !cneNew.getId().equals(cneOld.getId())) { - handler.childNodeChanged(cneOld.getName(), cneOld.getId(), cneNew.getId()); + handler.childNodeChanged(cneOld, cneNew.getId()); } } } Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDelta.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDelta.java?rev=1228091&r1=1228090&r2=1228091&view=diff ============================================================================== --- jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDelta.java (original) +++ jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDelta.java Fri Jan 6 11:19:09 2012 @@ -182,17 +182,16 @@ public class NodeDelta implements NodeDi removedProperties.put(propName, value); } - public void childNodeAdded(String childName, String id) { - addedChildNodes.put(childName, id); + public void childNodeAdded(ChildNodeEntry added) { + addedChildNodes.put(added.getName(), added.getId()); } - public void childNodeDeleted(String childName, String id) { - removedChildNodes.put(childName, id); + public void childNodeDeleted(ChildNodeEntry deleted) { + removedChildNodes.put(deleted.getName(), deleted.getId()); } - public void childNodeChanged(String childName, - String oldId, String newId) { - changedChildNodes.put(childName, newId); + public void childNodeChanged(ChildNodeEntry changed, String newId) { + changedChildNodes.put(changed.getName(), newId); } //--------------------------------------------------------< inner classes > Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDiffHandler.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDiffHandler.java?rev=1228091&r1=1228090&r2=1228091&view=diff ============================================================================== --- jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDiffHandler.java (original) +++ jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/NodeDiffHandler.java Fri Jan 6 11:19:09 2012 @@ -27,9 +27,9 @@ public interface NodeDiffHandler { void propDeleted(String propName, String value); - void childNodeAdded(String childName, String id); + void childNodeAdded(ChildNodeEntry added); - void childNodeDeleted(String childName, String id); + void childNodeDeleted(ChildNodeEntry deleted); - void childNodeChanged(String childName, String oldId, String newId); + void childNodeChanged(ChildNodeEntry changed, String newId); } Modified: jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/TraversingNodeDiffHandler.java URL: http://svn.apache.org/viewvc/jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/TraversingNodeDiffHandler.java?rev=1228091&r1=1228090&r2=1228091&view=diff ============================================================================== --- jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/TraversingNodeDiffHandler.java (original) +++ jackrabbit/sandbox/microkernel/src/main/java/org/apache/jackrabbit/mk/model/TraversingNodeDiffHandler.java Fri Jan 6 11:19:09 2012 @@ -65,16 +65,16 @@ public abstract class TraversingNodeDiff public void propDeleted(String propName, String value) { } - public void childNodeAdded(String childName, String id) { + public void childNodeAdded(ChildNodeEntry added) { } - public void childNodeDeleted(String childName, String id) { + public void childNodeDeleted(ChildNodeEntry deleted) { } - public void childNodeChanged(String childName, String oldId, String newId) { - paths.push(PathUtils.concat(getCurrentPath(), childName)); + public void childNodeChanged(ChildNodeEntry changed, String newId) { + paths.push(PathUtils.concat(getCurrentPath(), changed.getName())); try { - store.getNode(oldId).diff(store.getNode(newId), this); + store.getNode(changed.getId()).diff(store.getNode(newId), this); } catch (Exception e) { throw new RuntimeException(e); }