diff --git a/.gitignore b/.gitignore index 6e2013d1b448542ad653bb0febf98a6277f5d864..0b3673bf316a409b5caadf09f3fa58d42ad8f968 100644 --- a/.gitignore +++ b/.gitignore @@ -21,4 +21,4 @@ classes vendor/ logs/ - +.vscode/ diff --git a/cluster/router.go b/cluster/router.go index 30771fcfcf65e287c5e3433c620c5d42b960b6be..54a19695574f245fcac236e9308a2469f306a4f8 100644 --- a/cluster/router.go +++ b/cluster/router.go @@ -25,7 +25,7 @@ import ( // Extension - Router type RouterFactory interface { - Router(common.URL) (Router, error) + Router(*common.URL) (Router, error) } type Router interface { diff --git a/cluster/router/condition_router.go b/cluster/router/condition_router.go index b5f8551e9c0b5c3c1cd24f7ec6104a876f1f3dde..3797782e962c40d75a5a6b99054e133aece5d0bb 100644 --- a/cluster/router/condition_router.go +++ b/cluster/router/condition_router.go @@ -40,14 +40,14 @@ const ( //ConditionRouter condition router struct type ConditionRouter struct { Pattern string - Url common.URL + Url *common.URL Priority int64 Force bool WhenCondition map[string]MatchPair ThenCondition map[string]MatchPair } -func newConditionRouter(url common.URL) (*ConditionRouter, error) { +func newConditionRouter(url *common.URL) (*ConditionRouter, error) { var ( whenRule string thenRule string diff --git a/cluster/router/condition_router_test.go b/cluster/router/condition_router_test.go index d24e0ec86abc9051c3b2cb37d60e285623035006..e60cda31791e097bb83b16da0ab30385662d95cd 100644 --- a/cluster/router/condition_router_test.go +++ b/cluster/router/condition_router_test.go @@ -54,24 +54,24 @@ func (bi *MockInvoker) GetUrl() common.URL { return bi.url } -func getRouteUrl(rule string) common.URL { +func getRouteUrl(rule string) *common.URL { url, _ := common.NewURL(context.TODO(), "condition://0.0.0.0/com.foo.BarService") url.AddParam("rule", rule) url.AddParam("force", "true") - return url + return &url } -func getRouteUrlWithForce(rule, force string) common.URL { +func getRouteUrlWithForce(rule, force string) *common.URL { url, _ := common.NewURL(context.TODO(), "condition://0.0.0.0/com.foo.BarService") url.AddParam("rule", rule) url.AddParam("force", force) - return url + return &url } -func getRouteUrlWithNoForce(rule string) common.URL { +func getRouteUrlWithNoForce(rule string) *common.URL { url, _ := common.NewURL(context.TODO(), "condition://0.0.0.0/com.foo.BarService") url.AddParam("rule", rule) - return url + return &url } func (bi *MockInvoker) IsAvailable() bool { diff --git a/cluster/router/router_factory.go b/cluster/router/router_factory.go index f54042ae92252683205337b921cc24ef5519a8fd..a9794cb885badae98445ef4d7c0bbc2230d25d5f 100644 --- a/cluster/router/router_factory.go +++ b/cluster/router/router_factory.go @@ -32,6 +32,6 @@ type ConditionRouterFactory struct{} func NewConditionRouterFactory() cluster.RouterFactory { return ConditionRouterFactory{} } -func (c ConditionRouterFactory) Router(url common.URL) (cluster.Router, error) { +func (c ConditionRouterFactory) Router(url *common.URL) (cluster.Router, error) { return newConditionRouter(url) }