Struct FetchIter

Source
pub struct FetchIter<'a> { /* private fields */ }
Expand description

Iterator to fetch messages from within queue.

If fetch parameters are to query new messages, it will only return freshly added messages. Once these messages are fetched, they are considered pending and no longer returned by this iterator

If fetch parameter specifies to return pending messages within queue, then iterator will resume after last message id.

Implementations§

Source§

impl<'a> FetchIter<'a>

Source

pub fn new(params: FetchParams<'a>, queue: Queue) -> Self

Creates new iterator

Source

pub fn set_count(&mut self, count: usize)

Sets number of items to fetch

Source

pub fn set_cursor(&mut self, typ: FetchType)

Sets cursor to position where to iterate from.

Source

pub fn set_timeout(&mut self, timeout: Duration)

Sets time waiting to fetch data.

Redis will return reply within this time, not necessary immediately even if data is available.

Source

pub async fn next<T: FromRedisValue>( &mut self, ) -> Result<FetchResult<T>, RedisError>

Performs fetch, returning messages depending on FetchParams::typ.

If pending messages are fetched, moves cursor to last pending message after fetched messages.

We fetch our task as raw bytes to ensure we can always get it, regardless how it was serialized.

Source

pub async fn next_entries<T: FromRedisValue>( &mut self, ) -> Result<Vec<Entry<T>>, RedisError>

Performs fetch, returning messages depending on FetchParams::typ.

If pending messages are fetched, moves cursor to last pending message after fetched messages.

We fetch our task as raw bytes to ensure we can always get it, regardless how it was serialized.

Differently from next it returns only list of entries

Auto Trait Implementations§

§

impl<'a> Freeze for FetchIter<'a>

§

impl<'a> !RefUnwindSafe for FetchIter<'a>

§

impl<'a> Send for FetchIter<'a>

§

impl<'a> Sync for FetchIter<'a>

§

impl<'a> Unpin for FetchIter<'a>

§

impl<'a> !UnwindSafe for FetchIter<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,