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