(name string, handler Handler, opts ...EndpointOpt)
| 401 | } |
| 402 | |
| 403 | func (s *service) AddEndpoint(name string, handler Handler, opts ...EndpointOpt) error { |
| 404 | var options endpointOpts |
| 405 | for _, opt := range opts { |
| 406 | if err := opt(&options); err != nil { |
| 407 | return err |
| 408 | } |
| 409 | } |
| 410 | subject := name |
| 411 | if options.subject != "" { |
| 412 | subject = options.subject |
| 413 | } |
| 414 | queueGroup, noQueue := resolveQueueGroup(options.queueGroup, s.Config.QueueGroup, options.qgDisabled, s.Config.QueueGroupDisabled) |
| 415 | return addEndpoint(s, name, subject, handler, options.metadata, queueGroup, noQueue, options.msgLimit, options.bytesLimit) |
| 416 | } |
| 417 | |
| 418 | func addEndpoint(s *service, name, subject string, handler Handler, metadata map[string]string, queueGroup string, noQueue bool, msgLimit, bytesLimit int) error { |
| 419 | if !nameRegexp.MatchString(name) { |
no test coverage detected