Namespace AvroSharp.Streams
Objects written one after another to a stream in the binary encoding, with no container or framing, so the reader must be given the writer schema. AvroStreamWriter creates an AvroStreamWriter<T>, and AvroStreamReader opens an AvroStreamReader<T>; both have sync and async members. AvroStreamOptions sets the buffer size and the largest object a reader accepts. They work with generated types (AvroSharp.Serialization) and, through CreateGeneric and OpenGeneric, with the generic values of AvroSharp.Generic. For files that carry their schema, use AvroSharp.Containers.
Classes
- AvroStreamOptions
Options for AvroStreamReader<T> and AvroStreamWriter<T>.
- AvroStreamReader
Opens AvroStreamReader<T> instances.
- AvroStreamReader<T>
Reads objects written one after another in the binary encoding, with no container, framing or lengths, until the stream ends: data from a socket or a pipe, or a file of concatenated objects. The objects' schema is not in the stream; the caller supplies it. See AvroStreamWriter<T> for writing such a stream.
- AvroStreamWriter
Creates AvroStreamWriter<T> instances.
- AvroStreamWriter<T>
Writes objects one after another in the binary encoding, with no container, framing or lengths, for AvroStreamReader<T> or any reader that knows the schema. Objects are buffered and written to the stream once BufferSize bytes are buffered, and on Flush() and Dispose(). The asynchronous members do no synchronous I/O.