From 6d7b5cb75976bc4e8f6cb4b6b18518ef3905f529 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=9C=B0=E5=B9=B3=E7=BA=BF?= <22250530@qq.com> Date: Fri, 19 Jun 2015 16:34:23 +0800 Subject: [PATCH] --- src/com/wentch/redkale/convert/bson/BsonFactory.java | 11 +++++++---- src/com/wentch/redkale/convert/bson/BsonReader.java | 3 +++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/com/wentch/redkale/convert/bson/BsonFactory.java b/src/com/wentch/redkale/convert/bson/BsonFactory.java index dca851de1..8097f6cab 100644 --- a/src/com/wentch/redkale/convert/bson/BsonFactory.java +++ b/src/com/wentch/redkale/convert/bson/BsonFactory.java @@ -5,8 +5,7 @@ */ package com.wentch.redkale.convert.bson; -import com.wentch.redkale.convert.ConvertType; -import com.wentch.redkale.convert.Factory; +import com.wentch.redkale.convert.*; import java.io.Serializable; /** @@ -17,9 +16,13 @@ public final class BsonFactory extends Factory { private static final BsonFactory instance = new BsonFactory(null, Boolean.getBoolean("convert.bson.tiny")); + static final Decodeable objectDecoder = instance.loadDecoder(Object.class); + + static final Encodeable objectEncoder = instance.loadEncoder(Object.class); + static { - instance.register(Serializable.class, instance.loadDecoder(Object.class)); - instance.register(Serializable.class, instance.loadEncoder(Object.class)); + instance.register(Serializable.class, objectDecoder); + instance.register(Serializable.class, objectEncoder); } private BsonFactory(BsonFactory parent, boolean tiny) { diff --git a/src/com/wentch/redkale/convert/bson/BsonReader.java b/src/com/wentch/redkale/convert/bson/BsonReader.java index 2180886da..d6873e166 100644 --- a/src/com/wentch/redkale/convert/bson/BsonReader.java +++ b/src/com/wentch/redkale/convert/bson/BsonReader.java @@ -125,6 +125,9 @@ public final class BsonReader implements Reader { case 109: StringArraySimpledCoder.instance.convertFrom(this); break; + case 127: + BsonFactory.objectDecoder.convertFrom(this); + break; } }