@Override public byte[] encode(Map<K, V> v) { byte[][] elements = new byte[v.size() * 2][]; int index = 0; for (Entry<K, V> entry : v.entrySet()) { elements[index++] = escape(keyLexicoder.encode(entry.getKey())); elements[index++] = escape(valueLexicoder.encode(entry.getValue())); } return concat(elements); }
/** * {@inheritDoc} * * @return a byte array containing the concatenation of each element in the list encoded. */ @Override public byte[] encode(List<LT> v) { byte[][] encElements = new byte[v.size()][]; int index = 0; for (LT element : v) { encElements[index++] = escape(lexicoder.encode(element)); } return concat(encElements); }
@Override public byte[] encode(ComparablePair<A,B> data) { return concat(escape(firstLexicoder.encode(data.getFirst())), escape(secondLexicoder.encode(data.getSecond()))); }