26 lines
515 B
Go
26 lines
515 B
Go
|
package rabbitmq
|
||
|
|
||
|
// ListenerOptions rabbitmq listener options
|
||
|
type ListenerOptions struct {
|
||
|
queueDeclareArgs map[string]any
|
||
|
}
|
||
|
|
||
|
func (o *ListenerOptions) SetQueueDeclareArgs(args map[string]any) *ListenerOptions {
|
||
|
o.queueDeclareArgs = args
|
||
|
return o
|
||
|
}
|
||
|
|
||
|
func mergeListenerOptions(opts ...*ListenerOptions) *ListenerOptions {
|
||
|
o := new(ListenerOptions)
|
||
|
for _, opt := range opts {
|
||
|
if opt == nil {
|
||
|
continue
|
||
|
}
|
||
|
|
||
|
if opt.queueDeclareArgs != nil {
|
||
|
o.queueDeclareArgs = opt.queueDeclareArgs
|
||
|
}
|
||
|
}
|
||
|
return o
|
||
|
}
|