Class QueueMessages
- java.lang.Object
-
- dk.cloudcreate.essentials.components.foundation.messaging.queue.operations.QueueMessages
-
public class QueueMessages extends Object
Queue multiple messages to the same queue. All the messages will receive the sameQueuedMessage.getNextDeliveryTimestamp()
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionalOperation also matchesDurableQueuesInterceptor.intercept(QueueMessages, InterceptorChain)
-
-
Constructor Summary
Constructors Constructor Description QueueMessages(QueueName queueName, List<? extends Message> messages, Duration deliveryDelay)Queue multiple messages to the same queue.QueueMessages(QueueName queueName, List<? extends Message> messages, Optional<Duration> deliveryDelay)Queue multiple messages to the same queue.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static QueueMessagesBuilderbuilder()Create a new builder that produces a newQueueMessagesinstanceOptional<Duration>getDeliveryDelay()List<? extends Message>getMessages()QueueNamegetQueueName()voidsetDeliveryDelay(Duration deliveryDelay)voidsetDeliveryDelay(Optional<Duration> deliveryDelay)voidsetMessages(List<Message> messages)StringtoString()voidvalidate()
-
-
-
Constructor Detail
-
QueueMessages
public QueueMessages(QueueName queueName, List<? extends Message> messages, Optional<Duration> deliveryDelay)
Queue multiple messages to the same queue. All the messages will receive the sameQueuedMessage.getNextDeliveryTimestamp()
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactional- Parameters:
queueName- the name of the Queue the messages will be added tomessages- the message payloads (Message/OrderedMessage)deliveryDelay- optional: how long will the queue wait until it delivers the messages to theDurableQueueConsumer
-
QueueMessages
public QueueMessages(QueueName queueName, List<? extends Message> messages, Duration deliveryDelay)
Queue multiple messages to the same queue. All the messages will receive the sameQueuedMessage.getNextDeliveryTimestamp()
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactional- Parameters:
queueName- the name of the Queue the messages will be added tomessages- the message payloads (Message/OrderedMessage)deliveryDelay- optional: how long will the queue wait until it delivers the messages to theDurableQueueConsumer
-
-
Method Detail
-
builder
public static QueueMessagesBuilder builder()
Create a new builder that produces a newQueueMessagesinstance- Returns:
- a new
QueueMessagesBuilderinstance
-
getQueueName
public QueueName getQueueName()
- Returns:
- the name of the Queue the messages will be added to
-
getMessages
public List<? extends Message> getMessages()
- Returns:
- the message payloads (
Message/OrderedMessage)
-
getDeliveryDelay
public Optional<Duration> getDeliveryDelay()
- Returns:
- optional: how long will the queue wait until it delivers the messages to the
DurableQueueConsumer
-
setDeliveryDelay
public void setDeliveryDelay(Optional<Duration> deliveryDelay)
- Parameters:
deliveryDelay- optional: how long will the queue wait until it delivers the messages to theDurableQueueConsumer
-
setDeliveryDelay
public void setDeliveryDelay(Duration deliveryDelay)
- Parameters:
deliveryDelay- optional: how long will the queue wait until it delivers the messages to theDurableQueueConsumer
-
setMessages
public void setMessages(List<Message> messages)
- Parameters:
messages- the messages being queued (Message/OrderedMessage)
-
validate
public void validate()
-
-