You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@johnzon.apache.org by rm...@apache.org on 2014/07/12 10:53:22 UTC
git commit: resetting StringBuilder in all implementations of
bufferstrategy
Repository: incubator-fleece
Updated Branches:
refs/heads/master d3c2381ce -> badf44a23
resetting StringBuilder in all implementations of bufferstrategy
Project: http://git-wip-us.apache.org/repos/asf/incubator-fleece/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-fleece/commit/badf44a2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-fleece/tree/badf44a2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-fleece/diff/badf44a2
Branch: refs/heads/master
Commit: badf44a2377a508ca58be93b1d2321c2b105bcfd
Parents: d3c2381
Author: Romain Manni-Bucau <rm...@gmail.com>
Authored: Sat Jul 12 10:53:04 2014 +0200
Committer: Romain Manni-Bucau <rm...@gmail.com>
Committed: Sat Jul 12 10:53:04 2014 +0200
----------------------------------------------------------------------
.../org/apache/fleece/core/BufferStrategy.java | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-fleece/blob/badf44a2/fleece-core/src/main/java/org/apache/fleece/core/BufferStrategy.java
----------------------------------------------------------------------
diff --git a/fleece-core/src/main/java/org/apache/fleece/core/BufferStrategy.java b/fleece-core/src/main/java/org/apache/fleece/core/BufferStrategy.java
index 9d37e66..e80dd91 100644
--- a/fleece-core/src/main/java/org/apache/fleece/core/BufferStrategy.java
+++ b/fleece-core/src/main/java/org/apache/fleece/core/BufferStrategy.java
@@ -85,6 +85,11 @@ public enum BufferStrategy {
protected char[] newInstance(int size) {
return new char[size];
}
+
+ @Override
+ public void release(final char[] value) {
+ // no-op
+ }
}
private static class StringBuilderSingletonProvider extends SingletonProvider<StringBuilder> {
@@ -96,9 +101,14 @@ public enum BufferStrategy {
protected StringBuilder newInstance(final int size) {
return new StringBuilder(size);
}
+
+ @Override
+ public void release(final StringBuilder value) {
+ value.setLength(0);
+ }
}
- private static abstract class SingletonProvider<T> implements BufferProvider<T>, Serializable {
+ private static abstract class SingletonProvider<T> implements BufferProvider<T> {
protected final T buffer;
public SingletonProvider(final int size) {
@@ -163,6 +173,12 @@ public enum BufferStrategy {
protected StringBuilder newInstance(final int size) {
return new StringBuilder(size);
}
+
+ @Override
+ public void release(final StringBuilder value) {
+ value.setLength(0);
+ super.release(value);
+ }
}
private static class CharBufferByInstanceProvider implements BufferProvider<char[]> {