server: subscribe to topic with own name if router not nil (#1295)
* server: subscribe to topic with own name if router not nil Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
		| @@ -630,6 +630,8 @@ func (s *rpcServer) Register() error { | ||||
| 	// set what we're advertising | ||||
| 	s.opts.Advertise = addr | ||||
|  | ||||
| 	// router can exchange messages | ||||
| 	if s.opts.Router != nil { | ||||
| 		// subscribe to the topic with own name | ||||
| 		sub, err := s.opts.Broker.Subscribe(config.Name, s.HandleEvent) | ||||
| 		if err != nil { | ||||
| @@ -638,6 +640,7 @@ func (s *rpcServer) Register() error { | ||||
|  | ||||
| 		// save the subscriber | ||||
| 		s.subscriber = sub | ||||
| 	} | ||||
|  | ||||
| 	// subscribe for all of the subscribers | ||||
| 	for sb := range s.subscribers { | ||||
| @@ -654,11 +657,11 @@ func (s *rpcServer) Register() error { | ||||
| 			opts = append(opts, broker.DisableAutoAck()) | ||||
| 		} | ||||
|  | ||||
| 		log.Infof("Subscribing to topic: %s", sub.Topic()) | ||||
| 		sub, err := config.Broker.Subscribe(sb.Topic(), s.HandleEvent, opts...) | ||||
| 		if err != nil { | ||||
| 			return err | ||||
| 		} | ||||
| 		log.Infof("Subscribing to topic: %s", sub.Topic()) | ||||
|  | ||||
| 		s.subscribers[sb] = []broker.Subscriber{sub} | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user