Trait taos_query::tmq::AsConsumer
source · pub trait AsConsumer: Sized {
type Error;
type Offset: IsOffset;
type Meta: IsMeta;
type Data: IntoIterator<Item = Result<RawBlock, Self::Error>>;
// Required methods
fn subscribe<T: Into<String>, I: IntoIterator<Item = T> + Send>(
&mut self,
topics: I
) -> Result<(), Self::Error>;
fn recv_timeout(
&self,
timeout: Timeout
) -> Result<Option<(Self::Offset, MessageSet<Self::Meta, Self::Data>)>, Self::Error>;
fn commit(&self, offset: Self::Offset) -> Result<(), Self::Error>;
// Provided methods
fn default_timeout(&self) -> Timeout { ... }
fn recv(
&self
) -> Result<Option<(Self::Offset, MessageSet<Self::Meta, Self::Data>)>, Self::Error> { ... }
fn iter_data_only(
&self,
timeout: Timeout
) -> Box<dyn Iterator<Item = Result<(Self::Offset, Self::Data), Self::Error>> + '_> { ... }
fn iter_with_timeout(&self, timeout: Timeout) -> MessageSetsIter<'_, Self> ⓘ { ... }
fn iter(&self) -> MessageSetsIter<'_, Self> ⓘ { ... }
fn unsubscribe(self) { ... }
}Required Associated Types§
type Error
type Offset: IsOffset
type Meta: IsMeta
type Data: IntoIterator<Item = Result<RawBlock, Self::Error>>
Required Methods§
fn subscribe<T: Into<String>, I: IntoIterator<Item = T> + Send>( &mut self, topics: I ) -> Result<(), Self::Error>
sourcefn recv_timeout(
&self,
timeout: Timeout
) -> Result<Option<(Self::Offset, MessageSet<Self::Meta, Self::Data>)>, Self::Error>
fn recv_timeout( &self, timeout: Timeout ) -> Result<Option<(Self::Offset, MessageSet<Self::Meta, Self::Data>)>, Self::Error>
None means wait until next message come.
fn commit(&self, offset: Self::Offset) -> Result<(), Self::Error>
Provided Methods§
sourcefn default_timeout(&self) -> Timeout
fn default_timeout(&self) -> Timeout
Default timeout getter for message stream.