This commit is contained in:
@@ -103,9 +103,10 @@ public class MapDecoder<K, V> implements Decodeable<Reader, Map<K, V>> {
|
|||||||
if (len == Reader.SIGN_NOLENGTH) {
|
if (len == Reader.SIGN_NOLENGTH) {
|
||||||
int startPosition = in.position();
|
int startPosition = in.position();
|
||||||
while (in.hasNext(startPosition, contentLength)) {
|
while (in.hasNext(startPosition, contentLength)) {
|
||||||
K key = readKeyMember(in, member, first);
|
Reader entryReader = getMapEntryReader(in);
|
||||||
in.readBlank();
|
K key = readKeyMember(entryReader, member, first);
|
||||||
V value = readValueMember(in, member, first);
|
entryReader.readBlank();
|
||||||
|
V value = readValueMember(entryReader, member, first);
|
||||||
result.put(key, value);
|
result.put(key, value);
|
||||||
first = false;
|
first = false;
|
||||||
}
|
}
|
||||||
@@ -122,6 +123,10 @@ public class MapDecoder<K, V> implements Decodeable<Reader, Map<K, V>> {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected Reader getMapEntryReader(Reader in) {
|
||||||
|
return in;
|
||||||
|
}
|
||||||
|
|
||||||
protected K readKeyMember(Reader in, DeMember member, boolean first) {
|
protected K readKeyMember(Reader in, DeMember member, boolean first) {
|
||||||
return keyDecoder.convertFrom(in);
|
return keyDecoder.convertFrom(in);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user