diff --git a/micro.go b/micro.go index 53f365ef..0885fa57 100644 --- a/micro.go +++ b/micro.go @@ -20,6 +20,8 @@ type Service interface { Init(...Option) // Options returns the current options Options() Options + // Register the handler + Handle(v interface{}) error // Client is used to call services Client() client.Client // Server is for handling requests and events diff --git a/service.go b/service.go index 9e861f8b..29ff9352 100644 --- a/service.go +++ b/service.go @@ -126,6 +126,12 @@ func (s *service) Stop() error { return err } +func (s *service) Handle(v interface{}) error { + return s.opts.Server.Handle( + s.opts.Server.NewHandler(h), + ) +} + func (s *service) Run() (err error) { logger := s.opts.Logger