Struct oracle::aq::Queue

source ·
pub struct Queue<T>where
    T: Payload + ?Sized,
{ /* private fields */ }
Expand description

Advanced Queueing (AQ) queue which may be used to enqueue and dequeue messages

Warning: The type is unstable. It may be changed incompatibly by minor version upgrades.

Implementations§

source§

impl<'a, T> Queue<T>where
    T: Payload + ?Sized + 'a,

source

pub fn new(
    conn: &Connection,
    queue_name: &str,
    payload_type: &T::TypeInfo
) -> Result<Queue<T>>

Creates a new queue which may be used to enqueue and dequeue messages from Advanced Queuing (AQ) queues.

source

pub fn dequeue(&self) -> Result<MsgProps<T>>

Dequeues a single message from the queue.

source

pub fn dequeue_many(&self, max_size: u32) -> Result<Vec<MsgProps<T>>>

Dequeues multiple messages from the queue.

source

pub fn enqueue(&self, props: &MsgProps<T>) -> Result<()>

Enqueues a single mesasge into the queue.

source

pub fn enqueue_many<I>(&self, props: I) -> Result<()>where
    I: IntoIterator<Item = &'a MsgProps<T>>,

Enqueues multiple messages into the queue.

Warning: calling this function in parallel on different connections acquired from the same pool may fail due to Oracle bug 29928074. Ensure that this function is not run in parallel, use standalone connections or connections from different pools, or make multiple calls to Queue.enqueue instead. The function Queue.dequeue_many call is not affected.

source

pub fn deq_options(&mut self) -> Result<&mut DeqOptions>

Returns a reference to the dequeue options associated with the queue. These options affect how messages are dequeued.

source

pub fn enq_options(&mut self) -> Result<&mut EnqOptions>

Returns a reference to the enqueue options associated with the queue. These options affect how messages are enqueued.

Auto Trait Implementations§

§

impl<T: ?Sized> RefUnwindSafe for Queue<T>where
    T: RefUnwindSafe,

§

impl<T> !Send for Queue<T>

§

impl<T> !Sync for Queue<T>

§

impl<T: ?Sized> Unpin for Queue<T>where
    T: Unpin,

§

impl<T: ?Sized> UnwindSafe for Queue<T>where
    T: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

const: unstable · 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 Twhere
    U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.