func NewManagedSettlingHandler()

in v2/managedsettling.go [102:128]


func NewManagedSettlingHandler(opts *ManagedSettlingOptions, handler ManagedSettlingHandler) *ManagedSettler {
	options := defaultManagedSettlingOptions()
	if opts != nil {
		if opts.OnError != nil {
			options.OnError = opts.OnError
		}
		if opts.RetryDecision != nil {
			options.RetryDecision = opts.RetryDecision
		}
		if opts.RetryDelayStrategy != nil {
			options.RetryDelayStrategy = opts.RetryDelayStrategy
		}
		if opts.OnCompleted != nil {
			options.OnCompleted = opts.OnCompleted
		}
		if opts.OnAbandoned != nil {
			options.OnAbandoned = opts.OnAbandoned
		}
		if opts.OnDeadLettered != nil {
			options.OnDeadLettered = opts.OnDeadLettered
		}
	}
	return &ManagedSettler{
		next:    handler,
		options: options,
	}
}