Implement Solicit method for handler.Router
This commit is contained in:
parent
77c6c9781b
commit
ef91d836eb
@ -45,6 +45,16 @@ func (r *Router) Lookup(ctx context.Context, req *pb.LookupRequest, resp *pb.Loo
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Solicit triggers full routing table advertisement
|
||||||
|
func (r *Router) Solicit(ctx context.Context, req *pb.Request, resp *pb.Response) error {
|
||||||
|
if err := r.Router.Solicit(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Advertise streams router advertisements
|
||||||
func (r *Router) Advertise(ctx context.Context, req *pb.Request, stream pb.Router_AdvertiseStream) error {
|
func (r *Router) Advertise(ctx context.Context, req *pb.Request, stream pb.Router_AdvertiseStream) error {
|
||||||
advertChan, err := r.Router.Advertise()
|
advertChan, err := r.Router.Advertise()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -91,6 +101,7 @@ func (r *Router) Advertise(ctx context.Context, req *pb.Request, stream pb.Route
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Process processes advertisements
|
||||||
func (r *Router) Process(ctx context.Context, req *pb.Advert, rsp *pb.ProcessResponse) error {
|
func (r *Router) Process(ctx context.Context, req *pb.Advert, rsp *pb.ProcessResponse) error {
|
||||||
events := make([]*router.Event, len(req.Events))
|
events := make([]*router.Event, len(req.Events))
|
||||||
for i, event := range req.Events {
|
for i, event := range req.Events {
|
||||||
@ -126,6 +137,7 @@ func (r *Router) Process(ctx context.Context, req *pb.Advert, rsp *pb.ProcessRes
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Status returns router status
|
||||||
func (r *Router) Status(ctx context.Context, req *pb.Request, rsp *pb.StatusResponse) error {
|
func (r *Router) Status(ctx context.Context, req *pb.Request, rsp *pb.StatusResponse) error {
|
||||||
status := r.Router.Status()
|
status := r.Router.Status()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user