Replace proxy options
This commit is contained in:
@@ -4,15 +4,11 @@ package proxy
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/micro/go-micro/client"
|
||||
"github.com/micro/go-micro/config/options"
|
||||
"github.com/micro/go-micro/router"
|
||||
"github.com/micro/go-micro/server"
|
||||
)
|
||||
|
||||
// Proxy can be used as a proxy server for go-micro services
|
||||
type Proxy interface {
|
||||
options.Options
|
||||
// ProcessMessage handles inbound messages
|
||||
ProcessMessage(context.Context, server.Message) error
|
||||
// ServeRequest handles inbound requests
|
||||
@@ -22,35 +18,3 @@ type Proxy interface {
|
||||
var (
|
||||
DefaultEndpoint = "localhost:9090"
|
||||
)
|
||||
|
||||
// WithEndpoint sets a proxy endpoint
|
||||
func WithEndpoint(e string) options.Option {
|
||||
return options.WithValue("proxy.endpoint", e)
|
||||
}
|
||||
|
||||
// WithClient sets the client
|
||||
func WithClient(c client.Client) options.Option {
|
||||
return options.WithValue("proxy.client", c)
|
||||
}
|
||||
|
||||
// WithRouter specifies the router to use
|
||||
func WithRouter(r router.Router) options.Option {
|
||||
return options.WithValue("proxy.router", r)
|
||||
}
|
||||
|
||||
// WithLink sets a link for outbound requests
|
||||
func WithLink(name string, c client.Client) options.Option {
|
||||
return func(o *options.Values) error {
|
||||
var links map[string]client.Client
|
||||
v, ok := o.Get("proxy.links")
|
||||
if ok {
|
||||
links = v.(map[string]client.Client)
|
||||
} else {
|
||||
links = map[string]client.Client{}
|
||||
}
|
||||
links[name] = c
|
||||
// save the links
|
||||
o.Set("proxy.links", links)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user