From 0cfdb9795b5019c556116d03fe26ef7c382cfac3 Mon Sep 17 00:00:00 2001 From: Redkale <8730487+redkale@users.noreply.github.com> Date: Wed, 25 Jul 2018 12:06:11 +0800 Subject: [PATCH] --- src/org/redkale/convert/MapDecoder.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/org/redkale/convert/MapDecoder.java b/src/org/redkale/convert/MapDecoder.java index 500c88dff..cfeb63016 100644 --- a/src/org/redkale/convert/MapDecoder.java +++ b/src/org/redkale/convert/MapDecoder.java @@ -103,9 +103,10 @@ public class MapDecoder implements Decodeable> { if (len == Reader.SIGN_NOLENGTH) { int startPosition = in.position(); while (in.hasNext(startPosition, contentLength)) { - K key = readKeyMember(in, member, first); - in.readBlank(); - V value = readValueMember(in, member, first); + Reader entryReader = getMapEntryReader(in); + K key = readKeyMember(entryReader, member, first); + entryReader.readBlank(); + V value = readValueMember(entryReader, member, first); result.put(key, value); first = false; } @@ -122,6 +123,10 @@ public class MapDecoder implements Decodeable> { return result; } + protected Reader getMapEntryReader(Reader in) { + return in; + } + protected K readKeyMember(Reader in, DeMember member, boolean first) { return keyDecoder.convertFrom(in); }