You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by mr...@apache.org on 2016/08/30 15:16:18 UTC

svn commit: r1758410 - /jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java

Author: mreutegg
Date: Tue Aug 30 15:16:18 2016
New Revision: 1758410

URL: http://svn.apache.org/viewvc?rev=1758410&view=rev
Log:
OAK-4723: Optimize PathRev as/from String

Commit missing changes

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java?rev=1758410&r1=1758409&r2=1758410&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/RevisionVector.java Tue Aug 30 15:16:18 2016
@@ -326,13 +326,25 @@ public final class RevisionVector implem
             return "";
         }
         StringBuilder sb = new StringBuilder(len * Revision.REV_STRING_APPROX_SIZE + len - 1);
-        for (int i = 0; i < len; i++) {
+        return toStringBuilder(sb).toString();
+    }
+
+    /**
+     * Appends the string representation of this revision vector to the passed
+     * {@code StringBuilder}. The string representation is the same as returned
+     * by {@link #asString()}.
+     *
+     * @param sb the {@code StringBuilder} this revision vector is appended to.
+     * @return the passed {@code StringBuilder} object.
+     */
+    public StringBuilder toStringBuilder(StringBuilder sb) {
+        for (int i = 0; i < revisions.length; i++) {
             if (i > 0) {
                 sb.append(',');
             }
             revisions[i].toStringBuilder(sb);
         }
-        return sb.toString();
+        return sb;
     }
 
     /**
@@ -397,6 +409,16 @@ public final class RevisionVector implem
         return new RevisionVector(revs, false, false);
     }
 
+    /**
+     * Returns the dimensions of this revision vector. That is, the number of
+     * revision elements in this vector.
+     *
+     * @return the number of revision elements in this vector.
+     */
+    public int getDimensions() {
+        return revisions.length;
+    }
+
     //------------------------< CacheValue >------------------------------------
 
     @Override