Add String method to all interfaces
This commit is contained in:
parent
d7b3765c71
commit
be43d827c7
@ -7,6 +7,7 @@ type Broker interface {
|
||||
Init() error
|
||||
Publish(string, *Message) error
|
||||
Subscribe(string, Handler) (Subscriber, error)
|
||||
String() string
|
||||
}
|
||||
|
||||
type Handler func(*Message)
|
||||
@ -52,3 +53,7 @@ func Publish(topic string, msg *Message) error {
|
||||
func Subscribe(topic string, handler Handler) (Subscriber, error) {
|
||||
return DefaultBroker.Subscribe(topic, handler)
|
||||
}
|
||||
|
||||
func String() string {
|
||||
return DefaultBroker.String()
|
||||
}
|
||||
|
@ -237,3 +237,7 @@ func (h *httpBroker) Subscribe(topic string, handler Handler) (Subscriber, error
|
||||
|
||||
return subscriber, nil
|
||||
}
|
||||
|
||||
func (h *httpBroker) String() string {
|
||||
return "http"
|
||||
}
|
||||
|
@ -35,6 +35,7 @@ type Client interface {
|
||||
Stream(ctx context.Context, req Request, opts ...CallOption) (Streamer, error)
|
||||
StreamRemote(ctx context.Context, addr string, req Request, opts ...CallOption) (Streamer, error)
|
||||
Publish(ctx context.Context, p Publication, opts ...PublishOption) error
|
||||
String() string
|
||||
}
|
||||
|
||||
type Publication interface {
|
||||
@ -122,3 +123,7 @@ func NewProtoRequest(service, method string, request interface{}, reqOpts ...Req
|
||||
func NewJsonRequest(service, method string, request interface{}, reqOpts ...RequestOption) Request {
|
||||
return DefaultClient.NewJsonRequest(service, method, request, reqOpts...)
|
||||
}
|
||||
|
||||
func String() string {
|
||||
return DefaultClient.String()
|
||||
}
|
||||
|
@ -258,3 +258,7 @@ func (r *rpcClient) NewProtoRequest(service, method string, request interface{},
|
||||
func (r *rpcClient) NewJsonRequest(service, method string, request interface{}, reqOpts ...RequestOption) Request {
|
||||
return newRpcRequest(service, method, request, "application/json", reqOpts...)
|
||||
}
|
||||
|
||||
func (r *rpcClient) String() string {
|
||||
return "rpc"
|
||||
}
|
||||
|
@ -76,6 +76,10 @@ func (n *dcSelector) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (n *dcSelector) String() string {
|
||||
return "dc"
|
||||
}
|
||||
|
||||
// Return a new first node selector
|
||||
func DCSelector(opts ...selector.Option) selector.Selector {
|
||||
var sopts selector.Options
|
||||
|
@ -66,6 +66,10 @@ func (n *firstNodeSelector) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (n *firstNodeSelector) String() string {
|
||||
return "first"
|
||||
}
|
||||
|
||||
// Return a new first node selector
|
||||
func FirstNodeSelector(opts ...selector.Option) selector.Selector {
|
||||
var sopts selector.Options
|
||||
|
@ -212,3 +212,7 @@ func (c *consulRegistry) ListServices() ([]*Service, error) {
|
||||
func (c *consulRegistry) Watch() (Watcher, error) {
|
||||
return newConsulWatcher(c)
|
||||
}
|
||||
|
||||
func (c *consulRegistry) String() string {
|
||||
return "consul"
|
||||
}
|
||||
|
@ -65,6 +65,10 @@ func (m *MockRegistry) Watch() (registry.Watcher, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
func (m *MockRegistry) String() string {
|
||||
return "mock"
|
||||
}
|
||||
|
||||
func NewRegistry() *MockRegistry {
|
||||
return &MockRegistry{}
|
||||
}
|
||||
|
@ -6,6 +6,7 @@ type Registry interface {
|
||||
GetService(string) ([]*Service, error)
|
||||
ListServices() ([]*Service, error)
|
||||
Watch() (Watcher, error)
|
||||
String() string
|
||||
}
|
||||
|
||||
type Option func(*Options)
|
||||
@ -37,3 +38,7 @@ func ListServices() ([]*Service, error) {
|
||||
func Watch() (Watcher, error) {
|
||||
return DefaultRegistry.Watch()
|
||||
}
|
||||
|
||||
func String() string {
|
||||
return DefaultRegistry.String()
|
||||
}
|
||||
|
@ -143,6 +143,10 @@ func (r *blackListSelector) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *blackListSelector) String() string {
|
||||
return "blacklist"
|
||||
}
|
||||
|
||||
func NewSelector(opts ...selector.Option) selector.Selector {
|
||||
var sopts selector.Options
|
||||
|
||||
|
@ -74,6 +74,10 @@ func (r *randomSelector) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *randomSelector) String() string {
|
||||
return "random"
|
||||
}
|
||||
|
||||
func newRandomSelector(opts ...Option) Selector {
|
||||
var sopts Options
|
||||
|
||||
|
@ -73,6 +73,10 @@ func (r *roundRobinSelector) Close() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *roundRobinSelector) String() string {
|
||||
return "roundrobin"
|
||||
}
|
||||
|
||||
func NewSelector(opts ...selector.Option) selector.Selector {
|
||||
var sopts selector.Options
|
||||
|
||||
|
@ -72,6 +72,8 @@ type Selector interface {
|
||||
Reset(service string)
|
||||
// Close renders the selector unusable
|
||||
Close() error
|
||||
// Name of the selector
|
||||
String() string
|
||||
}
|
||||
|
||||
// Next is a function that returns the next node
|
||||
|
@ -185,6 +185,8 @@ func (s *rpcServer) Register() error {
|
||||
Metadata: config.Metadata(),
|
||||
}
|
||||
|
||||
node.Metadata["transport"] = config.transport.String()
|
||||
|
||||
s.RLock()
|
||||
var endpoints []*registry.Endpoint
|
||||
for _, e := range s.handlers {
|
||||
@ -309,3 +311,7 @@ func (s *rpcServer) Stop() error {
|
||||
s.exit <- ch
|
||||
return <-ch
|
||||
}
|
||||
|
||||
func (s *rpcServer) String() string {
|
||||
return "rpc"
|
||||
}
|
||||
|
@ -49,6 +49,7 @@ type Server interface {
|
||||
Deregister() error
|
||||
Start() error
|
||||
Stop() error
|
||||
String() string
|
||||
}
|
||||
|
||||
type Publication interface {
|
||||
@ -183,3 +184,7 @@ func Stop() error {
|
||||
log.Infof("Stopping server")
|
||||
return DefaultServer.Stop()
|
||||
}
|
||||
|
||||
func String() string {
|
||||
return DefaultServer.String()
|
||||
}
|
||||
|
@ -308,6 +308,10 @@ func (h *httpTransport) Listen(addr string) (Listener, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (h *httpTransport) String() string {
|
||||
return "http"
|
||||
}
|
||||
|
||||
func newHttpTransport(addrs []string, opt ...Option) *httpTransport {
|
||||
return &httpTransport{}
|
||||
}
|
||||
|
@ -26,6 +26,7 @@ type Listener interface {
|
||||
type Transport interface {
|
||||
Dial(addr string, opts ...DialOption) (Client, error)
|
||||
Listen(addr string) (Listener, error)
|
||||
String() string
|
||||
}
|
||||
|
||||
type options struct{}
|
||||
@ -59,3 +60,7 @@ func Dial(addr string, opts ...DialOption) (Client, error) {
|
||||
func Listen(addr string) (Listener, error) {
|
||||
return DefaultTransport.Listen(addr)
|
||||
}
|
||||
|
||||
func String() string {
|
||||
return DefaultTransport.String()
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user