Uses of Interface
dk.cloudcreate.essentials.components.foundation.messaging.queue.QueuedMessage
Packages that use QueuedMessage
Package
Description
-
Uses of QueuedMessage in dk.cloudcreate.essentials.components.foundation.messaging
Methods in dk.cloudcreate.essentials.components.foundation.messaging with parameters of type QueuedMessageModifier and TypeMethodDescriptionbooleanMessageDeliveryErrorHandler.AlwaysRetry.isPermanentError(QueuedMessage queuedMessage, Throwable error) booleanMessageDeliveryErrorHandler.isPermanentError(QueuedMessage queuedMessage, Throwable error) This method is called when theDurableQueueConsumerexperiences an exception during Message delivery.
The result of this method determines if the Message is instantly marked as a Poison-Message/Dead-Letter-Message or if we can attempt message redelivery according to the specifiedRedeliveryPolicy
Note: theMessageDeliveryErrorHandler.isPermanentError(QueuedMessage, Throwable)will be called with only the top-level exception - so the implementation of this method must itself check the error exceptions causal chain to determine if it represents a permanent error.booleanMessageDeliveryErrorHandler.NeverRetry.isPermanentError(QueuedMessage queuedMessage, Throwable error) booleanMessageDeliveryErrorHandler.StopRedeliveryOn.isPermanentError(QueuedMessage queuedMessage, Throwable error) booleanRedeliveryPolicy.isPermanentError(QueuedMessage queuedMessage, Throwable error) If an exception occurs during message handling, theRedeliveryPolicy.isPermanentError(QueuedMessage, Throwable)will be called with only the top-level exception - the associatedMessageDeliveryErrorHandler.isPermanentError(QueuedMessage, Throwable)must itself check the error exceptions causal chain to determine if it represents a permanent error. -
Uses of QueuedMessage in dk.cloudcreate.essentials.components.foundation.messaging.queue
Classes in dk.cloudcreate.essentials.components.foundation.messaging.queue that implement QueuedMessageModifier and TypeClassDescriptionfinal classRepresents a message queued onto a Durable QueueMethods in dk.cloudcreate.essentials.components.foundation.messaging.queue that return types with arguments of type QueuedMessageModifier and TypeMethodDescriptionDurableQueues.getDeadLetterMessage(GetDeadLetterMessage operation) Get a queued message that's marked as aisDeadLetterMessage()default Optional<QueuedMessage>DurableQueues.getDeadLetterMessage(QueueEntryId queueEntryId) Get a queued message that's marked as aisDeadLetterMessage()DurableQueues.getDeadLetterMessages(GetDeadLetterMessages operation) Query Dead Letter Messages (i.e. not normal Queued Messages) for the given Queuedefault List<QueuedMessage>DurableQueues.getDeadLetterMessages(QueueName queueName, DurableQueues.QueueingSortOrder queueingSortOrder, long startIndex, long pageSize) Query Dead Letter Messages (i.e. not normal Queued Messages) for the given QueueDurableQueues.getNextMessageReadyForDelivery(GetNextMessageReadyForDelivery operation) Query the next Queued Message (i.e. not including Dead Letter Messages) that's ready to be delivered to aDurableQueueConsumer
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.getNextMessageReadyForDelivery(QueueName queueName) Query the next Queued Message (i.e. not including Dead Letter Messages) that's ready to be delivered to aDurableQueueConsumer
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionalDurableQueues.getQueuedMessage(GetQueuedMessage operation) Get a queued message that is NOT marked as aisDeadLetterMessage()default Optional<QueuedMessage>DurableQueues.getQueuedMessage(QueueEntryId queueEntryId) Get a queued message that is NOT marked as aisDeadLetterMessage()DurableQueues.getQueuedMessages(GetQueuedMessages operation) Query Queued Messages (i.e. not including any Dead Letter Messages) for the given Queuedefault List<QueuedMessage>DurableQueues.getQueuedMessages(QueueName queueName, DurableQueues.QueueingSortOrder queueingSortOrder, long startIndex, long pageSize) Query Queued Messages (i.e. not including any Dead Letter Messages) for the given Queuedefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetDeadLetterMessagecallsdefault List<QueuedMessage>DurableQueuesInterceptor.intercept(GetDeadLetterMessages operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessages, List<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetDeadLetterMessagescallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetNextMessageReadyForDelivery operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetNextMessageReadyForDelivery, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetNextMessageReadyForDeliverycallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetQueuedMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetQueuedMessagecallsdefault List<QueuedMessage>DurableQueuesInterceptor.intercept(GetQueuedMessages operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessages, List<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetQueuedMessagescallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptMarkAsDeadLetterMessagecallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(ResurrectDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<ResurrectDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptResurrectDeadLetterMessagecallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptRetryMessagecallsDurableQueues.markAsDeadLetterMessage(MarkAsDeadLetterMessage operation) Mark an already Queued Message as a Dead Letter Message (or Poison Message).
Dead Letter Messages won't be delivered to anyDurableQueueConsumer(called by theDurableQueueConsumer)
To deliver a Dead Letter Message you must first resurrect the message usingDurableQueues.resurrectDeadLetterMessage(QueueEntryId, Duration)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.markAsDeadLetterMessage(QueueEntryId queueEntryId) Mark an already Queued Message as a Dead Letter Message (or Poison Message).
Dead Letter Messages won't be delivered to anyDurableQueueConsumer(called by theDurableQueueConsumer)
To deliver a Dead Letter Message you must first resurrect the message usingDurableQueues.resurrectDeadLetterMessage(QueueEntryId, Duration)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.markAsDeadLetterMessage(QueueEntryId queueEntryId, String causeForBeingMarkedAsDeadLetter) Mark an already Queued Message as a Dead Letter Message (or Poison Message).
Dead Letter Messages won't be delivered to anyDurableQueueConsumer(called by theDurableQueueConsumer)
To deliver a Dead Letter Message you must first resurrect the message usingDurableQueues.resurrectDeadLetterMessage(QueueEntryId, Duration)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.markAsDeadLetterMessage(QueueEntryId queueEntryId, Throwable causeForBeingMarkedAsDeadLetter) Mark an already Queued Message as a Dead Letter Message (or Poison Message).
Dead Letter Messages won't be delivered to anyDurableQueueConsumer(called by theDurableQueueConsumer)
To deliver a Dead Letter Message you must first resurrect the message usingDurableQueues.resurrectDeadLetterMessage(QueueEntryId, Duration)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionalDurableQueues.resurrectDeadLetterMessage(ResurrectDeadLetterMessage operation) Resurrect a Dead Letter Message for redelivery after the specifieddeliveryDelay
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.resurrectDeadLetterMessage(QueueEntryId queueEntryId, Duration deliveryDelay) Resurrect a Dead Letter Message for redelivery after the specifieddeliveryDelay
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionalDurableQueues.retryMessage(RetryMessage operation) Schedule the message for redelivery after the specifieddeliveryDelay(called by theDurableQueueConsumer)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionaldefault Optional<QueuedMessage>DurableQueues.retryMessage(QueueEntryId queueEntryId, Throwable causeForRetry, Duration deliveryDelay) Schedule the message for redelivery after the specifieddeliveryDelay(called by theDurableQueueConsumer)
Note this method MUST be called within an existingUnitOfWorkIF usingTransactionalMode.FullyTransactionalMethods in dk.cloudcreate.essentials.components.foundation.messaging.queue with parameters of type QueuedMessageModifier and TypeMethodDescriptionvoidPatternMatchingQueuedMessageHandler.handle(QueuedMessage queuedMessage) voidQueuedMessageHandler.handle(QueuedMessage queueMessage) protected voidPatternMatchingQueuedMessageHandler.handleUnmatchedMessage(QueuedMessage queuedMessage) Override this method to provide custom handling forQueuedMessage's who'sMessage.getPayload()aren't matched
Default behaviour is to throw anIllegalArgumentExceptionunlessPatternMatchingQueuedMessageHandler.isAllowUnmatchedMessages()is set to true (default value is false)protected booleanDefaultDurableQueueConsumer.isPermanentError(QueuedMessage queuedMessage, Throwable e) voidDefaultDurableQueueConsumer.messageAdded(QueuedMessage queuedMessage) voidDurableQueueConsumerNotifications.messageAdded(QueuedMessage queuedMessage) Notification from theDurableQueuesimplementation that a new message has been added to the Queue that the givenDurableQueueConsumeris consuming messages from
Note: A consumer still needs to useDurableQueues.getNextMessageReadyForDelivery(GetNextMessageReadyForDelivery)to ensure proper message locking of messages that they are processingvoidQueuePollingOptimizer.SimpleQueuePollingOptimizer.messageAdded(QueuedMessage queuedMessage) voidQueuePollingOptimizer.queuePollingReturnedMessage(QueuedMessage queuedMessage) voidQueuePollingOptimizer.SimpleQueuePollingOptimizer.queuePollingReturnedMessage(QueuedMessage queuedMessage) Method parameters in dk.cloudcreate.essentials.components.foundation.messaging.queue with type arguments of type QueuedMessageModifier and TypeMethodDescriptiondefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetDeadLetterMessagecallsdefault List<QueuedMessage>DurableQueuesInterceptor.intercept(GetDeadLetterMessages operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessages, List<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetDeadLetterMessagescallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetNextMessageReadyForDelivery operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetNextMessageReadyForDelivery, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetNextMessageReadyForDeliverycallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(GetQueuedMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetQueuedMessagecallsdefault List<QueuedMessage>DurableQueuesInterceptor.intercept(GetQueuedMessages operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessages, List<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptGetQueuedMessagescallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptMarkAsDeadLetterMessagecallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(ResurrectDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<ResurrectDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptResurrectDeadLetterMessagecallsdefault Optional<QueuedMessage>DurableQueuesInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) InterceptRetryMessagecallsConstructors in dk.cloudcreate.essentials.components.foundation.messaging.queue with parameters of type QueuedMessage -
Uses of QueuedMessage in dk.cloudcreate.essentials.components.foundation.messaging.queue.micrometer
Methods in dk.cloudcreate.essentials.components.foundation.messaging.queue.micrometer that return QueuedMessageModifier and TypeMethodDescriptionprotected QueuedMessageDurableQueuesMicrometerTracingInterceptor.restoreTraceContext(QueuedMessage queuedMessage, String contextDescription) Methods in dk.cloudcreate.essentials.components.foundation.messaging.queue.micrometer that return types with arguments of type QueuedMessageModifier and TypeMethodDescriptionDurableQueuesMicrometerInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerInterceptor.intercept(ResurrectDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<ResurrectDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetNextMessageReadyForDelivery operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetNextMessageReadyForDelivery, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetQueuedMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) Methods in dk.cloudcreate.essentials.components.foundation.messaging.queue.micrometer with parameters of type QueuedMessageModifier and TypeMethodDescriptionprotected QueuedMessageDurableQueuesMicrometerTracingInterceptor.restoreTraceContext(QueuedMessage queuedMessage, String contextDescription) Method parameters in dk.cloudcreate.essentials.components.foundation.messaging.queue.micrometer with type arguments of type QueuedMessageModifier and TypeMethodDescriptionDurableQueuesMicrometerInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerInterceptor.intercept(ResurrectDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<ResurrectDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetNextMessageReadyForDelivery operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetNextMessageReadyForDelivery, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(GetQueuedMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<GetQueuedMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(MarkAsDeadLetterMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<MarkAsDeadLetterMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain) DurableQueuesMicrometerTracingInterceptor.intercept(RetryMessage operation, dk.cloudcreate.essentials.shared.interceptor.InterceptorChain<RetryMessage, Optional<QueuedMessage>, DurableQueuesInterceptor> interceptorChain)