Trait datafusion::datasource::stream::StreamProvider
source · pub trait StreamProvider:
Debug
+ Send
+ Sync {
// Required methods
fn schema(&self) -> &SchemaRef;
fn reader(&self) -> Result<Box<dyn RecordBatchReader>>;
fn stream_write_display(
&self,
t: DisplayFormatType,
f: &mut Formatter<'_>,
) -> Result;
// Provided method
fn writer(&self) -> Result<Box<dyn RecordBatchWriter>> { ... }
}
Expand description
The StreamProvider trait is used as a generic interface for reading and writing from streaming
data sources (such as FIFO, Websocket, Kafka, etc.). Implementations of the provider are
responsible for providing a RecordBatchReader
and optionally a RecordBatchWriter
.
Required Methods§
sourcefn reader(&self) -> Result<Box<dyn RecordBatchReader>>
fn reader(&self) -> Result<Box<dyn RecordBatchReader>>
Provide RecordBatchReader
sourcefn stream_write_display(
&self,
t: DisplayFormatType,
f: &mut Formatter<'_>,
) -> Result
fn stream_write_display( &self, t: DisplayFormatType, f: &mut Formatter<'_>, ) -> Result
Display implementation when using as a DataSink
Provided Methods§
sourcefn writer(&self) -> Result<Box<dyn RecordBatchWriter>>
fn writer(&self) -> Result<Box<dyn RecordBatchWriter>>
Provide RecordBatchWriter