A general purpose reader of data from avro streams. This reader analyzes and resolves the reader and writer schemas when constructed so that reads can be more efficient. Once constructed, a reader can be reused or shared among threads to avoid incurring more resolution costs. More...
Classes | |
interface | ArrayAccess |
interface | EnumAccess |
interface | FixedAccess |
interface | MapAccess |
interface | RecordAccess |
class | SchemaPair |
Public Member Functions | |
T | Read (T reuse, Decoder decoder) |
Read a datum. Traverse the schema, depth-first, reading all leaf values in the schema into a datum that is returned. If the provided datum is non-null it may be reused and returned. | |
Protected Member Functions | |
delegate object | ReadItem (object reuse, Decoder dec) |
PreresolvingDatumReader (Schema writerSchema, Schema readerSchema) | |
abstract ArrayAccess | GetArrayAccess (ArraySchema readerSchema) |
abstract EnumAccess | GetEnumAccess (EnumSchema readerSchema) |
abstract MapAccess | GetMapAccess (MapSchema readerSchema) |
abstract RecordAccess | GetRecordAccess (RecordSchema readerSchema) |
abstract FixedAccess | GetFixedAccess (FixedSchema readerSchema) |
virtual bool | IsReusable (Schema.Type tag) |
Indicates if it's possible to reuse an object of the specified type. Generally false for immutable objects like int, long, string, etc but may differ between the Specific and Generic implementations. Used to avoid retrieving the existing value if it's not reusable. | |
Static Protected Member Functions | |
static Schema | FindBranch (UnionSchema us, Schema s) |
Properties | |
Schema | ReaderSchema [get, set] |
Schema | WriterSchema [get, set] |
A general purpose reader of data from avro streams. This reader analyzes and resolves the reader and writer schemas when constructed so that reads can be more efficient. Once constructed, a reader can be reused or shared among threads to avoid incurring more resolution costs.
virtual bool Avro.Generic.PreresolvingDatumReader< T >.IsReusable | ( | Schema.Type | tag | ) | [inline, protected, virtual] |
Indicates if it's possible to reuse an object of the specified type. Generally false for immutable objects like int, long, string, etc but may differ between the Specific and Generic implementations. Used to avoid retrieving the existing value if it's not reusable.
Reimplemented in Avro.Generic.GenericDatumReader< T >, and Avro.Specific.SpecificDatumReader< T >.
T Avro.Generic.PreresolvingDatumReader< T >.Read | ( | T | reuse, |
Decoder | decoder | ||
) | [inline] |
Read a datum. Traverse the schema, depth-first, reading all leaf values in the schema into a datum that is returned. If the provided datum is non-null it may be reused and returned.
Implements Avro.Generic.DatumReader< T >.