Package com.microsoft.azure.servicebus
Class QueueClient
- java.lang.Object
-
- com.microsoft.azure.servicebus.primitives.ClientEntity
-
- com.microsoft.azure.servicebus.QueueClient
-
- All Implemented Interfaces:
ICloseable,IMessageAndSessionPump,IMessageEntityClient,IMessageSender,IQueueClient
public final class QueueClient extends ClientEntity implements IQueueClient
-
-
Constructor Summary
Constructors Constructor Description QueueClient(ConnectionStringBuilder amqpConnectionStringBuilder, ReceiveMode receiveMode)QueueClient(String namespace, String queuePath, ClientSettings clientSettings, ReceiveMode receiveMode)QueueClient(URI namespaceEndpointURI, String queuePath, ClientSettings clientSettings, ReceiveMode receiveMode)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidabandon(UUID lockToken)AbandonMessagewith lock token.voidabandon(UUID lockToken, TransactionContext transaction)AbandonMessagewith lock token.voidabandon(UUID lockToken, Map<String,Object> propertiesToModify)AbandonMessagewith lock token and updated message property.voidabandon(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)AbandonMessagewith lock token and updated message property.CompletableFuture<Void>abandonAsync(UUID lockToken)Asynchronously abandonMessagewith lock token.CompletableFuture<Void>abandonAsync(UUID lockToken, TransactionContext transaction)Asynchronously abandonMessagewith lock token.CompletableFuture<Void>abandonAsync(UUID lockToken, Map<String,Object> propertiesToModify)Asynchronously abandonMessagewith lock token and updated message property.CompletableFuture<Void>abandonAsync(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)Asynchronously abandonMessagewith lock token and updated message property.voidcancelScheduledMessage(long sequenceNumber)Cancels the enqueuing of an already sent scheduled message, if it was not already enqueued.CompletableFuture<Void>cancelScheduledMessageAsync(long sequenceNumber)Cancels the enqueuing of an already sent scheduled message, if it was not already enqueued.voidcomplete(UUID lockToken)Completes aMessageusing its lock token.voidcomplete(UUID lockToken, TransactionContext transaction)Completes aMessageusing its lock token.CompletableFuture<Void>completeAsync(UUID lockToken)Asynchronously completes aMessageusing its lock token.CompletableFuture<Void>completeAsync(UUID lockToken, TransactionContext transaction)Asynchronously completes aMessageusing its lock token.voiddeadLetter(UUID lockToken)Moves aMessageto the deadletter sub-queue.voiddeadLetter(UUID lockToken, TransactionContext transaction)Moves aMessageto the deadletter sub-queue.voiddeadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription)Moves aMessageto the deadletter sub-queue with deadletter reason and error description.voiddeadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, TransactionContext transaction)Moves aMessageto the deadletter sub-queue with deadletter reason and error description.voiddeadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify)Moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.voiddeadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify, TransactionContext transaction)Moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.voiddeadLetter(UUID lockToken, Map<String,Object> propertiesToModify)Moves aMessageto the deadletter sub-queue with modified message properties.voiddeadLetter(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)Moves aMessageto the deadletter sub-queue with modified message properties.CompletableFuture<Void>deadLetterAsync(UUID lockToken)Asynchronously moves aMessageto the deadletter sub-queue with deadletter.CompletableFuture<Void>deadLetterAsync(UUID lockToken, TransactionContext transaction)Asynchronously moves aMessageto the deadletter sub-queue with deadletter.CompletableFuture<Void>deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription)Asynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description.CompletableFuture<Void>deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, TransactionContext transaction)Asynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description.CompletableFuture<Void>deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify)Asynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.CompletableFuture<Void>deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify, TransactionContext transaction)Asynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.CompletableFuture<Void>deadLetterAsync(UUID lockToken, Map<String,Object> propertiesToModify)Asynchronously moves aMessageto the deadletter sub-queue with modified properties.CompletableFuture<Void>deadLetterAsync(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)Asynchronously moves aMessageto the deadletter sub-queue with modified properties.StringgetEntityPath()Gets the path of the entity this client is sending messages to or receiving messages from.intgetPrefetchCount()Get the prefetch value set.StringgetQueueName()Gets the name of the queue.ReceiveModegetReceiveMode()Gets theReceiveModeof the current receiverprotected CompletableFuture<Void>onClose()voidregisterMessageHandler(IMessageHandler handler)Deprecated.voidregisterMessageHandler(IMessageHandler handler, MessageHandlerOptions handlerOptions)Deprecated.voidregisterMessageHandler(IMessageHandler handler, MessageHandlerOptions handlerOptions, ExecutorService executorService)Receive messages continuously from the entity.voidregisterMessageHandler(IMessageHandler handler, ExecutorService executorService)Receive messages continuously from the entity.voidregisterSessionHandler(ISessionHandler handler)Deprecated.voidregisterSessionHandler(ISessionHandler handler, SessionHandlerOptions handlerOptions)Deprecated.voidregisterSessionHandler(ISessionHandler handler, SessionHandlerOptions handlerOptions, ExecutorService executorService)Receive session messages continuously from the queue.voidregisterSessionHandler(ISessionHandler handler, ExecutorService executorService)Receive session messages continuously from the queue.longscheduleMessage(IMessage message, Instant scheduledEnqueueTimeUtc)Sends a scheduled message to the Azure Service Bus entity this sender is connected to.longscheduleMessage(IMessage message, Instant scheduledEnqueueTimeUtc, TransactionContext transaction)Sends a scheduled message to the Azure Service Bus entity this sender is connected to.CompletableFuture<Long>scheduleMessageAsync(IMessage message, Instant scheduledEnqueueTimeUtc)Sends a scheduled message to the Azure Service Bus entity this sender is connected to.CompletableFuture<Long>scheduleMessageAsync(IMessage message, Instant scheduledEnqueueTimeUtc, TransactionContext transaction)Sends a scheduled message to the Azure Service Bus entity this sender is connected to.voidsend(IMessage message)Sends a message to the Azure Service Bus entity this sender is connected to.voidsend(IMessage message, TransactionContext transaction)Sends a message to the Azure Service Bus entity this sender is connected to.CompletableFuture<Void>sendAsync(IMessage message)Sends a message to the Azure Service Bus entity this sender is connected to.CompletableFuture<Void>sendAsync(IMessage message, TransactionContext transaction)Sends a message to the Azure Service Bus entity this sender is connected to.voidsendBatch(Collection<? extends IMessage> messages)Sends a batch of messages to the Azure Service Bus entity this sender is connected to.voidsendBatch(Collection<? extends IMessage> messages, TransactionContext transaction)Sends a batch of messages to the Azure Service Bus entity this sender is connected to.CompletableFuture<Void>sendBatchAsync(Collection<? extends IMessage> messages)Sends a batch of messages to the Azure Service Bus entity this sender is connected to.CompletableFuture<Void>sendBatchAsync(Collection<? extends IMessage> messages, TransactionContext transaction)Sends a batch of messages to the Azure Service Bus entity this sender is connected to.voidsetPrefetchCount(int prefetchCount)Set the prefetch count of the receiver.-
Methods inherited from class com.microsoft.azure.servicebus.primitives.ClientEntity
close, closeAsync, finalize, getClientId, getIsClosed, getIsClosingOrClosed, setClosed, setClosing, throwIfClosed
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.microsoft.azure.servicebus.ICloseable
close, closeAsync
-
-
-
-
Constructor Detail
-
QueueClient
public QueueClient(ConnectionStringBuilder amqpConnectionStringBuilder, ReceiveMode receiveMode) throws InterruptedException, ServiceBusException
-
QueueClient
public QueueClient(String namespace, String queuePath, ClientSettings clientSettings, ReceiveMode receiveMode) throws InterruptedException, ServiceBusException
-
QueueClient
public QueueClient(URI namespaceEndpointURI, String queuePath, ClientSettings clientSettings, ReceiveMode receiveMode) throws InterruptedException, ServiceBusException
-
-
Method Detail
-
getReceiveMode
public ReceiveMode getReceiveMode()
Description copied from interface:IQueueClientGets theReceiveModeof the current receiver- Specified by:
getReceiveModein interfaceIQueueClient- Returns:
- The receive mode.
-
send
public void send(IMessage message) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a message to the Azure Service Bus entity this sender is connected to. This method blocks until the message is sent to the entity. Calling this method is equivalent to callingsendAsync(message).get(). For better performance, use async methods.- Specified by:
sendin interfaceIMessageSender- Parameters:
message- message to be sent to the entity- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if message couldn't be sent to the entity
-
send
public void send(IMessage message, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a message to the Azure Service Bus entity this sender is connected to. This method blocks until the message is sent to the entity. Calling this method is equivalent to callingsendAsync(message).get(). For better performance, use async methods.- Specified by:
sendin interfaceIMessageSender- Parameters:
message- message to be sent to the entitytransaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if message couldn't be sent to the entity
-
sendBatch
public void sendBatch(Collection<? extends IMessage> messages) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a batch of messages to the Azure Service Bus entity this sender is connected to. This method blocks until the batch is sent to the entity. Calling this method is equivalent to callingsendBatchAsync(messages).get(). For better performance, use async methods. When called on partitioned entities, messages meant for different partitions cannot be batched together.- Specified by:
sendBatchin interfaceIMessageSender- Parameters:
messages- collection of messages to be sent to the entity- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if the batch couldn't be sent to the entity
-
sendBatch
public void sendBatch(Collection<? extends IMessage> messages, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a batch of messages to the Azure Service Bus entity this sender is connected to. This method blocks until the batch is sent to the entity. Calling this method is equivalent to callingsendBatchAsync(messages).get(). For better performance, use async methods. When called on partitioned entities, messages meant for different partitions cannot be batched together.- Specified by:
sendBatchin interfaceIMessageSender- Parameters:
messages- collection of messages to be sent to the entitytransaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if the batch couldn't be sent to the entity
-
sendAsync
public CompletableFuture<Void> sendAsync(IMessage message)
Description copied from interface:IMessageSenderSends a message to the Azure Service Bus entity this sender is connected to. This is an asynchronous method returning a CompletableFuture which completes when the message is sent to the entity.- Specified by:
sendAsyncin interfaceIMessageSender- Parameters:
message- message to be sent to the entity- Returns:
- a CompletableFuture representing the pending send
-
sendAsync
public CompletableFuture<Void> sendAsync(IMessage message, TransactionContext transaction)
Description copied from interface:IMessageSenderSends a message to the Azure Service Bus entity this sender is connected to. This is an asynchronous method returning a CompletableFuture which completes when the message is sent to the entity.- Specified by:
sendAsyncin interfaceIMessageSender- Parameters:
message- message to be sent to the entitytransaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending send
-
sendBatchAsync
public CompletableFuture<Void> sendBatchAsync(Collection<? extends IMessage> messages)
Description copied from interface:IMessageSenderSends a batch of messages to the Azure Service Bus entity this sender is connected to. This is an asynchronous method returning a CompletableFuture which completes when the batch is sent to the entity. When called on partitioned entities, messages meant for different partitions cannot be batched together.- Specified by:
sendBatchAsyncin interfaceIMessageSender- Parameters:
messages- collection of messages to be sent to the entity- Returns:
- a CompletableFuture representing the pending send
-
sendBatchAsync
public CompletableFuture<Void> sendBatchAsync(Collection<? extends IMessage> messages, TransactionContext transaction)
Description copied from interface:IMessageSenderSends a batch of messages to the Azure Service Bus entity this sender is connected to. This is an asynchronous method returning a CompletableFuture which completes when the batch is sent to the entity. When called on partitioned entities, messages meant for different partitions cannot be batched together.- Specified by:
sendBatchAsyncin interfaceIMessageSender- Parameters:
messages- collection of messages to be sent to the entitytransaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending send
-
scheduleMessageAsync
public CompletableFuture<Long> scheduleMessageAsync(IMessage message, Instant scheduledEnqueueTimeUtc)
Description copied from interface:IMessageSenderSends a scheduled message to the Azure Service Bus entity this sender is connected to. A scheduled message is enqueued and made available to receivers only at the scheduled enqueue time. This is an asynchronous method returning a CompletableFuture which completes when the message is sent to the entity. The CompletableFuture, on completion, returns the sequence number of the scheduled message which can be used to cancel the scheduling of the message.- Specified by:
scheduleMessageAsyncin interfaceIMessageSender- Parameters:
message- message to be sent to the entityscheduledEnqueueTimeUtc- instant at which the message should be enqueued in the entity- Returns:
- a CompletableFuture representing the pending send, which returns the sequence number of the scheduled message. This sequence number can be used to cancel the scheduling of the message.
-
scheduleMessageAsync
public CompletableFuture<Long> scheduleMessageAsync(IMessage message, Instant scheduledEnqueueTimeUtc, TransactionContext transaction)
Description copied from interface:IMessageSenderSends a scheduled message to the Azure Service Bus entity this sender is connected to. A scheduled message is enqueued and made available to receivers only at the scheduled enqueue time. This is an asynchronous method returning a CompletableFuture which completes when the message is sent to the entity. The CompletableFuture, on completion, returns the sequence number of the scheduled message which can be used to cancel the scheduling of the message.- Specified by:
scheduleMessageAsyncin interfaceIMessageSender- Parameters:
message- message to be sent to the entityscheduledEnqueueTimeUtc- instant at which the message should be enqueued in the entitytransaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending send, which returns the sequence number of the scheduled message. This sequence number can be used to cancel the scheduling of the message.
-
cancelScheduledMessageAsync
public CompletableFuture<Void> cancelScheduledMessageAsync(long sequenceNumber)
Description copied from interface:IMessageSenderCancels the enqueuing of an already sent scheduled message, if it was not already enqueued. This is an asynchronous method returning a CompletableFuture which completes when the message is cancelled.- Specified by:
cancelScheduledMessageAsyncin interfaceIMessageSender- Parameters:
sequenceNumber- sequence number of the scheduled message- Returns:
- a CompletableFuture representing the pending cancellation
-
scheduleMessage
public long scheduleMessage(IMessage message, Instant scheduledEnqueueTimeUtc) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a scheduled message to the Azure Service Bus entity this sender is connected to. A scheduled message is enqueued and made available to receivers only at the scheduled enqueue time. This method blocks until the message is sent to the entity. Calling this method is equivalent to callingscheduleMessageAsync(message, scheduledEnqueueTimeUtc).get(). For better performance, use async methods.- Specified by:
scheduleMessagein interfaceIMessageSender- Parameters:
message- message to be sent to the entityscheduledEnqueueTimeUtc- instant at which the message should be enqueued in the entity- Returns:
- sequence number of the scheduled message
- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if message couldn't be sent to the entity
-
scheduleMessage
public long scheduleMessage(IMessage message, Instant scheduledEnqueueTimeUtc, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageSenderSends a scheduled message to the Azure Service Bus entity this sender is connected to. A scheduled message is enqueued and made available to receivers only at the scheduled enqueue time. This method blocks until the message is sent to the entity. Calling this method is equivalent to callingscheduleMessageAsync(message, scheduledEnqueueTimeUtc).get(). For better performance, use async methods.- Specified by:
scheduleMessagein interfaceIMessageSender- Parameters:
message- message to be sent to the entityscheduledEnqueueTimeUtc- instant at which the message should be enqueued in the entitytransaction-TransactionContextwhich this operation should enlist to.- Returns:
- sequence number of the scheduled message
- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if message couldn't be sent to the entity
-
cancelScheduledMessage
public void cancelScheduledMessage(long sequenceNumber) throws InterruptedException, ServiceBusExceptionDescription copied from interface:IMessageSenderCancels the enqueuing of an already sent scheduled message, if it was not already enqueued. This method blocks until the message is sent to the entity. Calling this method is equivalent to callingcancelScheduledMessageAsync(sequenceNumber).get(). For better performance, use async methods.- Specified by:
cancelScheduledMessagein interfaceIMessageSender- Parameters:
sequenceNumber- sequence number of the scheduled message- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if scheduled message couldn't be cancelled
-
getEntityPath
public String getEntityPath()
Description copied from interface:IMessageEntityClientGets the path of the entity this client is sending messages to or receiving messages from.- Specified by:
getEntityPathin interfaceIMessageEntityClient- Returns:
- path of the entity this client is connecting to
-
registerMessageHandler
@Deprecated public void registerMessageHandler(IMessageHandler handler) throws InterruptedException, ServiceBusException
Deprecated.Description copied from interface:IMessageAndSessionPumpReceive messages continuously from the entity. Registers a message handler and begins a new thread to receive messages. IMessageHandler methods are executed on java.util.concurrent.commonPool()- Specified by:
registerMessageHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheIMessageHandlerinstance- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerMessageHandler
@Deprecated public void registerMessageHandler(IMessageHandler handler, MessageHandlerOptions handlerOptions) throws InterruptedException, ServiceBusException
Deprecated.Description copied from interface:IMessageAndSessionPumpReceive messages continuously from the entity. Registers a message handler and begins a new thread to receive messages. IMessageHandler methods are executed on java.util.concurrent.commonPool()- Specified by:
registerMessageHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheIMessageHandlerinstancehandlerOptions-MessageHandlerOptions- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerSessionHandler
@Deprecated public void registerSessionHandler(ISessionHandler handler) throws InterruptedException, ServiceBusException
Deprecated.Description copied from interface:IMessageAndSessionPumpReceive session messages continuously from the queue. Registers a message handler and begins a new thread to receive session-messages. ISessionHandler methods are executed on java.util.concurrent.commonPool()- Specified by:
registerSessionHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheISessionHandlerinstance- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerSessionHandler
@Deprecated public void registerSessionHandler(ISessionHandler handler, SessionHandlerOptions handlerOptions) throws InterruptedException, ServiceBusException
Deprecated.Description copied from interface:IMessageAndSessionPumpReceive session messages continuously from the queue. Registers a message handler and begins a new thread to receive session-messages. ISessionHandler methods are executed on java.util.concurrent.commonPool()- Specified by:
registerSessionHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheISessionHandlerinstancehandlerOptions-SessionHandlerOptions- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerMessageHandler
public void registerMessageHandler(IMessageHandler handler, ExecutorService executorService) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpReceive messages continuously from the entity. Registers a message handler and begins a new thread to receive messages. IMessageHandler methods are executed on the passed executor service.- Specified by:
registerMessageHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheIMessageHandlerinstanceexecutorService- ExecutorService which is used to executeIMessageHandlermethods.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerMessageHandler
public void registerMessageHandler(IMessageHandler handler, MessageHandlerOptions handlerOptions, ExecutorService executorService) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpReceive messages continuously from the entity. Registers a message handler and begins a new thread to receive messages. IMessageHandler methods are executed on the passed executor service.- Specified by:
registerMessageHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheIMessageHandlerinstancehandlerOptions-MessageHandlerOptionsexecutorService- ExecutorService which is used to executeIMessageHandlermethods- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerSessionHandler
public void registerSessionHandler(ISessionHandler handler, ExecutorService executorService) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpReceive session messages continuously from the queue. Registers a message handler and begins a new thread to receive session-messages. ISessionHandler methods are executed on the passed executor service.- Specified by:
registerSessionHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheISessionHandlerinstanceexecutorService- ExecutorService which is used to executeISessionHandlermethods- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
registerSessionHandler
public void registerSessionHandler(ISessionHandler handler, SessionHandlerOptions handlerOptions, ExecutorService executorService) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpReceive session messages continuously from the queue. Registers a message handler and begins a new thread to receive session-messages. ISessionHandler methods are executed on the passed executor service.- Specified by:
registerSessionHandlerin interfaceIMessageAndSessionPump- Parameters:
handler- TheISessionHandlerinstancehandlerOptions-SessionHandlerOptionsexecutorService- ExecutorService which is used to executeISessionHandlermethods- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if register failed
-
onClose
protected CompletableFuture<Void> onClose()
- Specified by:
onClosein classClientEntity
-
abandon
public void abandon(UUID lockToken) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpAbandonMessagewith lock token. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message- Specified by:
abandonin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
abandon
public void abandon(UUID lockToken, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpAbandonMessagewith lock token. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message- Specified by:
abandonin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
abandon
public void abandon(UUID lockToken, Map<String,Object> propertiesToModify) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpAbandonMessagewith lock token and updated message property. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message- Specified by:
abandonin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
abandon
public void abandon(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpAbandonMessagewith lock token and updated message property. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message- Specified by:
abandonin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
abandonAsync
public CompletableFuture<Void> abandonAsync(UUID lockToken)
Description copied from interface:IMessageAndSessionPumpAsynchronously abandonMessagewith lock token. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message.- Specified by:
abandonAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Returns:
- a CompletableFuture representing the pending abandon.
-
abandonAsync
public CompletableFuture<Void> abandonAsync(UUID lockToken, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously abandonMessagewith lock token. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message.- Specified by:
abandonAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending abandon.
-
abandonAsync
public CompletableFuture<Void> abandonAsync(UUID lockToken, Map<String,Object> propertiesToModify)
Description copied from interface:IMessageAndSessionPumpAsynchronously abandonMessagewith lock token and updated message property. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message.- Specified by:
abandonAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.- Returns:
- a CompletableFuture representing the pending abandon.
-
abandonAsync
public CompletableFuture<Void> abandonAsync(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously abandonMessagewith lock token and updated message property. This will make the message available again for processing. Abandoning a message will increase the delivery count on the message.- Specified by:
abandonAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending abandon.
-
complete
public void complete(UUID lockToken) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpCompletes aMessageusing its lock token. This will delete the message from the service.- Specified by:
completein interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
complete
public void complete(UUID lockToken, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpCompletes aMessageusing its lock token. This will delete the message from the service.- Specified by:
completein interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if abandon failed
-
completeAsync
public CompletableFuture<Void> completeAsync(UUID lockToken)
Description copied from interface:IMessageAndSessionPumpAsynchronously completes aMessageusing its lock token. This will delete the message from the service.- Specified by:
completeAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Returns:
- a CompletableFuture representing the pending complete.
-
completeAsync
public CompletableFuture<Void> completeAsync(UUID lockToken, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously completes aMessageusing its lock token. This will delete the message from the service.- Specified by:
completeAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending complete.
-
deadLetter
public void deadLetter(UUID lockToken) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, Map<String,Object> propertiesToModify) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with modified message properties.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with modified message properties.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with deadletter reason and error description.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with deadletter reason and error description.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.propertiesToModify- Message properties to modify.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetter
public void deadLetter(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify, TransactionContext transaction) throws InterruptedException, ServiceBusException
Description copied from interface:IMessageAndSessionPumpMoves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.- Specified by:
deadLetterin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Throws:
InterruptedException- if the current thread was interrupted while waitingServiceBusException- if deadletter failed
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, Map<String,Object> propertiesToModify)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with modified properties.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, Map<String,Object> propertiesToModify, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with modified properties.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.propertiesToModify- Message properties to modify.- Returns:
- a CompletableFuture representing the pending deadletter.
-
deadLetterAsync
public CompletableFuture<Void> deadLetterAsync(UUID lockToken, String deadLetterReason, String deadLetterErrorDescription, Map<String,Object> propertiesToModify, TransactionContext transaction)
Description copied from interface:IMessageAndSessionPumpAsynchronously moves aMessageto the deadletter sub-queue with deadletter reason and error description and modified properties.- Specified by:
deadLetterAsyncin interfaceIMessageAndSessionPump- Parameters:
lockToken- Message lock tokenMessage.getLockToken()deadLetterReason- The deadletter reason.deadLetterErrorDescription- The deadletter error description.propertiesToModify- Message properties to modify.transaction-TransactionContextwhich this operation should enlist to.- Returns:
- a CompletableFuture representing the pending deadletter.
-
getPrefetchCount
public int getPrefetchCount()
Description copied from interface:IMessageAndSessionPumpGet the prefetch value set.- Specified by:
getPrefetchCountin interfaceIMessageAndSessionPump- Returns:
- The set prefetch count value.
-
setPrefetchCount
public void setPrefetchCount(int prefetchCount) throws ServiceBusExceptionDescription copied from interface:IMessageAndSessionPumpSet the prefetch count of the receiver. Prefetch speeds up the message flow by aiming to have a message readily available for local retrieval when and before the application asks for one using Receive. Setting a non-zero value prefetches PrefetchCount number of messages. Setting the value to zero turns prefetch off. For RECEIVEANDDELETE mode, the default value is 0. For PEEKLOCK mode, the default value is 100.The value cannot be set until the receiver is created.
- Specified by:
setPrefetchCountin interfaceIMessageAndSessionPump- Parameters:
prefetchCount- The desired prefetch count.- Throws:
ServiceBusException- if sets the value failed
-
getQueueName
public String getQueueName()
Description copied from interface:IQueueClientGets the name of the queue.- Specified by:
getQueueNamein interfaceIQueueClient- Returns:
- The name of the queue.
-
-