public class AvroSerializerUtil extends Object
| Modifier and Type | Field and Description |
|---|---|
static ThreadLocal<org.apache.avro.io.BinaryDecoder> |
decoders |
static ThreadLocal<org.apache.avro.io.BinaryEncoder> |
encoders |
static ConcurrentHashMap<String,org.apache.avro.specific.SpecificDatumReader<?>> |
readerMap |
static ConcurrentHashMap<String,org.apache.avro.specific.SpecificDatumWriter<?>> |
writerMap
Create a
ConcurrentHashMap for the
datum readers and writers. |
| Constructor and Description |
|---|
AvroSerializerUtil() |
| Modifier and Type | Method and Description |
|---|---|
static Object |
deserializer(Object value,
org.apache.avro.Schema schema) |
static <T> byte[] |
serializer(T value,
org.apache.avro.Schema schema) |
public static final ThreadLocal<org.apache.avro.io.BinaryEncoder> encoders
public static final ThreadLocal<org.apache.avro.io.BinaryDecoder> decoders
public static final ConcurrentHashMap<String,org.apache.avro.specific.SpecificDatumWriter<?>> writerMap
ConcurrentHashMap for the
datum readers and writers.
This is necessary because they are not thread safe, at least not before
Avro 1.4.0 (See AVRO-650).
When they are thread safe, it is possible to maintain a single reader and
writer pair for every schema, instead of one for every thread.public static final ConcurrentHashMap<String,org.apache.avro.specific.SpecificDatumReader<?>> readerMap
public static <T> byte[] serializer(T value,
org.apache.avro.Schema schema)
throws IOException
IOExceptionpublic static Object deserializer(Object value, org.apache.avro.Schema schema) throws IOException
IOExceptionCopyright © 2010-2014 The Apache Software Foundation. All Rights Reserved.