/// <summary> /// This instance method dequeues multiple messages from a queue using the supplied dequeue options. /// </summary> /// <param name="count"></param> /// <param name="options"></param> public Task <OracleAQMessage[]> DequeueArrayAsync(int count, OracleAQDequeueOptions options, CancellationToken cancellationToken = default) { switch (MessageType) { case OracleAQMessageType.Raw: return(OracleAQQueueUtil.DequeueRawArrayAsync(this, options, count, log, cancellationToken)); case OracleAQMessageType.UDT: return(OracleAQQueueUtil.DequeueUdtArrayAsync(this, options, count, log, cancellationToken)); case OracleAQMessageType.Xml: return(OracleAQQueueUtil.DequeueXmlArrayAsync(this, options, count, log, cancellationToken)); default: throw new InvalidOperationException(); } }
/// <summary> /// This instance method dequeues multiple messages from a queue using the supplied dequeue options. /// </summary> /// <param name="count"></param> /// <param name="options"></param> public OracleAQMessage[] DequeueArray(int count, OracleAQDequeueOptions options, CancellationToken cancellationToken = default) { return(OracleAQQueueUtil.DequeueUdtArrayAsync(this, options, count, log, cancellationToken).Result); }