This commit is contained in:
kamhung
2015-11-30 17:52:51 +08:00
parent 01937e192f
commit 2ec86dab2a
4 changed files with 57 additions and 5 deletions

View File

@@ -9,6 +9,7 @@ import com.wentch.redkale.convert.*;
import com.wentch.redkale.convert.ext.*;
import com.wentch.redkale.util.*;
import java.util.concurrent.atomic.*;
import java.util.function.*;
/**
*
@@ -38,7 +39,19 @@ public final class BsonReader implements Reader {
}
public static ObjectPool<BsonReader> createPool(int max) {
return new ObjectPool<>(max, (Object... params) -> new BsonReader(), null, (x) -> x.recycle());
return new ObjectPool<BsonReader>(max, new Creator<BsonReader>() {
@Override
public BsonReader create(Object... params) {
return new BsonReader();
}
}, null, new Predicate<BsonReader>() {
@Override
public boolean test(BsonReader t) {
return t.recycle();
}
});
}
public BsonReader(byte[] bytes) {

View File

@@ -8,6 +8,7 @@ package com.wentch.redkale.convert.bson;
import com.wentch.redkale.convert.*;
import com.wentch.redkale.util.*;
import java.nio.*;
import java.util.function.*;
/**
*
@@ -24,7 +25,19 @@ public class BsonWriter implements Writer {
protected boolean tiny;
public static ObjectPool<BsonWriter> createPool(int max) {
return new ObjectPool<>(max, (Object... params) -> new BsonWriter(), null, (x) -> x.recycle());
return new ObjectPool<BsonWriter>(max, new Creator<BsonWriter>() {
@Override
public BsonWriter create(Object... params) {
return new BsonWriter();
}
}, null, new Predicate<BsonWriter>() {
@Override
public boolean test(BsonWriter t) {
return t.recycle();
}
});
}
public byte[] toArray() {
@@ -66,7 +79,7 @@ public class BsonWriter implements Writer {
* 扩充指定长度的缓冲区
*
* @param len
* @return
* @return
*/
protected int expand(int len) {
int newcount = count + len;

View File

@@ -8,6 +8,7 @@ package com.wentch.redkale.convert.json;
import com.wentch.redkale.convert.*;
import com.wentch.redkale.util.*;
import java.util.concurrent.atomic.*;
import java.util.function.*;
/**
*
@@ -22,7 +23,19 @@ public final class JsonReader implements Reader {
private int limit;
public static ObjectPool<JsonReader> createPool(int max) {
return new ObjectPool<>(max, (Object... params) -> new JsonReader(), null, (x) -> x.recycle());
return new ObjectPool<JsonReader>(max, new Creator<JsonReader>() { //为了兼容 JDK 6
@Override
public JsonReader create(Object... params) {
return new JsonReader();
}
}, null, new Predicate<JsonReader>() {
@Override
public boolean test(JsonReader t) {
return t.recycle();
}
});
}
public JsonReader() {

View File

@@ -8,6 +8,7 @@ package com.wentch.redkale.convert.json;
import com.wentch.redkale.convert.*;
import com.wentch.redkale.util.*;
import java.nio.*;
import java.util.function.*;
/**
*
@@ -30,7 +31,19 @@ public class JsonWriter implements Writer {
protected boolean tiny;
public static ObjectPool<JsonWriter> createPool(int max) {
return new ObjectPool<>(max, (Object... params) -> new JsonWriter(), null, (x) -> x.recycle());
return new ObjectPool<JsonWriter>(max, new Creator<JsonWriter>() {
@Override
public JsonWriter create(Object... params) {
return new JsonWriter();
}
}, null, new Predicate<JsonWriter>() {
@Override
public boolean test(JsonWriter t) {
return t.recycle();
}
});
}
public JsonWriter() {