# Functions
NewHealthChecker creates a new HealthChecker with the provided clients.
Deprecated: use NewRenewLockHandler NewLockRenewalHandler returns a middleware handler that will renew the lock on the message at the specified interval.
NewManagedSettlingHandler allows to configure Retry decision logic and delay strategy.
NewMultiProcessor creates a new processor with a list of receivers and a handler.
NewPanicHandler recovers panics from downstream handlers.
NewProcessor creates a new processor with the provided receiver and handler.
No description provided by the author
NewRenewLockHandler returns a middleware handler that will renew the lock on the message at the specified interval.
NewSender takes in a Sender and a Marshaller to create a new object that can send messages to the ServiceBus queue.
NewSettlementHandler creates a middleware to use the Settlement api in the message handler implementation.
NewTracingHandler is a shuttle middleware that extracts the context from the message Application property if available, or from the existing context if not, and starts a span.
SetCorrelationId sets the ServiceBus message's correlation ID to a user-specified value.
Deprecated: Use SetLogHandler instead to adapt slog.
SetLogHandler allows to set a custom slog.Handler to be used by the go-shuttle logger.
SetMessageDelay schedules a message in the future.
SetMessageId sets the ServiceBus message's ID to a user-specified value.
SetMessageTTL sets the ServiceBus message's TimeToLive to a user-specified value.
SetScheduleAt schedules a message to be enqueued in the future.
WithReceiverSpanNameFormatter allows formatting name of the span started by the tracing handler in NewTracingHandler.
WithSpanStartOptions allows setting custom span start options for the tracing handler in NewTracingHandler.
WithTracePropagation is a sender option to inject the trace context into the message.
WithTraceProvider allows setting a custom trace provider for the tracing handler in NewTracingHandler.
# Structs
Abandon settlement will cause a message to be available again from the queue or subscription.
Complete settlement completes a message, deleting it from the queue or subscription.
ConstantDelayStrategy delays the message retry by the given duration.
DeadLetter settlement moves the message to the dead letter queue for a queue or subscription.
DefaultJSONMarshaller is the default marshaller for JSON messages.
DefaultProtoMarshaller is the default marshaller for protobuf messages.
Defer settlement will cause a message to be deferred.
HealthChecker performs periodic health checks on the Service Bus Senders and Receivers.
HealthCheckerOptions configures the HealthChecker.
LockRenewalOptions configures the lock renewal.
ManagedSettler is a middleware that allows to reduce the message handler signature to ManagedSettlingFunc.
ManagedSettlingOptions allows to configure the ManagedSettling middleware.
MaxAttemptsRetryDecision defines how many delivery the handler allows before explicitly moving the message to the deadletter queue.
NoOp settlement exits the handler without taking an action, letting the message's peek lock expire before incrementing the delivery count, or moving it to the deadletter, depending on the queue or subscription's configuration.
No description provided by the author
Processor encapsulates the message pump and concurrency handling of servicebus.
ProcessorOptions configures the processor MaxConcurrency defaults to 1.
No description provided by the author
ReceiverHealthChecker performs health checks on azservicebus.Receiver.
Sender contains an SBSender used to send the message to the ServiceBus queue and a Marshaller used to marshal any struct into a ServiceBus message.
SenderHealthChecker performs health checks on azservicebus.Sender.
No description provided by the author
SettlementHandlerOptions allows to configure the SettleHandler.
No description provided by the author
# Interfaces
AzServiceBusSender is satisfied by *azservicebus.Sender.
No description provided by the author
HealthCheckable is an interface for performing health checks on azservicebus.Sender and azservicebus.Receiver.
LockRenewer abstracts the servicebus receiver client to only expose lock renewal.
No description provided by the author
ManagedSettlingHandler is the message Handler interface for the ManagedSettler.
No description provided by the author
MessageSettler is passed to the handlers.
No description provided by the author
RetryDecision allows to provide custom retry decision.
RetryDelayStrategy can be implemented to provide custom delay retry strategies.
Settlement represents an action to take on a message.
# Type aliases
HandlerFunc is a func to handle the message received from a subscription.
ManagedSettlingFunc allows to convert a function with the signature func(context.Context, *azservicebus.ReceivedMessage) error to the ManagedSettlingHandler interface.
MessageBody is a type to represent that an input message body can be of any type.
No description provided by the author