diff --git a/README.md b/README.md index 0da06e47c..d41c629e7 100755 --- a/README.md +++ b/README.md @@ -52,7 +52,7 @@ func (s *HelloServer) SayHello(b *restful.Context) { b.Write([]byte("Hello : Welcome to Go-Chassis.")) } //Specify URL pattern -func (s *HelloServer) URLPatterns() []restful.RouteSpec { +func (s *HelloServer) URLPatterns() []restful.Route { return []restful.RouteSpec{ {http.MethodGet, "/sayhello", "SayHello"}, } diff --git a/chassis.go b/chassis.go index 33f5d7d42..f72bc90ec 100755 --- a/chassis.go +++ b/chassis.go @@ -34,14 +34,15 @@ import ( "github.com/ServiceComb/go-chassis/core/server" "github.com/ServiceComb/go-chassis/core/tracing" "github.com/ServiceComb/go-chassis/eventlistener" - // aes package handles security related plugins + // metric plugin _ "github.com/ServiceComb/go-chassis/metrics/prom" + // aes package handles security related plugins _ "github.com/ServiceComb/go-chassis/security/plugins/aes" _ "github.com/ServiceComb/go-chassis/security/plugins/plain" _ "github.com/ServiceComb/go-chassis/server/restful" // highway package register the highway server plugin _ "github.com/ServiceComb/go-chassis/server/highway" - // tcp package handles transport related things + // import config center plugins _ "github.com/ServiceComb/go-cc-client/apollo-client" _ "github.com/ServiceComb/go-cc-client/configcenter-client" "github.com/ServiceComb/go-chassis/config-center" diff --git a/chassis_test.go b/chassis_test.go index c44c0fb36..27765a00e 100755 --- a/chassis_test.go +++ b/chassis_test.go @@ -9,7 +9,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config" "github.com/ServiceComb/go-chassis/core/config/model" "github.com/ServiceComb/go-chassis/core/lager" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/stretchr/testify/assert" ) diff --git a/core/archaius/archaius.go b/core/archaius/archaius.go index 2a4c22873..b7f9d1513 100755 --- a/core/archaius/archaius.go +++ b/core/archaius/archaius.go @@ -5,7 +5,7 @@ import ( "strings" "github.com/ServiceComb/go-chassis/core/lager" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/ServiceComb/go-archaius" "github.com/ServiceComb/go-archaius/core" diff --git a/core/archaius/archaius_test.go b/core/archaius/archaius_test.go index 62b19e22e..d9d90c86c 100644 --- a/core/archaius/archaius_test.go +++ b/core/archaius/archaius_test.go @@ -15,7 +15,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config/schema" "github.com/ServiceComb/go-chassis/core/lager" "github.com/ServiceComb/go-chassis/core/loadbalancer" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/stretchr/testify/assert" ) diff --git a/core/config/config.go b/core/config/config.go index 1c3645085..d584e9694 100755 --- a/core/config/config.go +++ b/core/config/config.go @@ -11,7 +11,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config/model" "github.com/ServiceComb/go-chassis/core/config/schema" "github.com/ServiceComb/go-chassis/core/lager" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "gopkg.in/yaml.v2" ) diff --git a/core/config/schema/loader.go b/core/config/schema/loader.go index 6de081a39..1872ad052 100755 --- a/core/config/schema/loader.go +++ b/core/config/schema/loader.go @@ -3,7 +3,7 @@ package schema import ( "errors" "fmt" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "io/ioutil" "os" "path/filepath" diff --git a/core/config/schema/loader_test.go b/core/config/schema/loader_test.go index b75eebbe3..9dd8457c9 100755 --- a/core/config/schema/loader_test.go +++ b/core/config/schema/loader_test.go @@ -2,7 +2,7 @@ package schema_test import ( "github.com/ServiceComb/go-chassis/core/config/schema" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/stretchr/testify/assert" "os" "path/filepath" diff --git a/core/goplugin/plugin.go b/core/goplugin/plugin.go index cae8d2346..b64e914e9 100755 --- a/core/goplugin/plugin.go +++ b/core/goplugin/plugin.go @@ -4,7 +4,7 @@ import ( "os" "plugin" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" ) // LookupPlugin lookup plugin diff --git a/core/registry/file/file_client.go b/core/registry/file/file_client.go index b59d3399c..ea9128eff 100755 --- a/core/registry/file/file_client.go +++ b/core/registry/file/file_client.go @@ -9,7 +9,7 @@ import ( "strings" "github.com/ServiceComb/go-chassis/core/lager" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/ServiceComb/go-sc-client/model" ) diff --git a/core/registry/util.go b/core/registry/util.go index 7846a28f0..ed968cd9e 100644 --- a/core/registry/util.go +++ b/core/registry/util.go @@ -12,7 +12,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config/model" "github.com/ServiceComb/go-chassis/core/lager" chassisTLS "github.com/ServiceComb/go-chassis/core/tls" - "github.com/ServiceComb/go-chassis/util/iputil" + "github.com/ServiceComb/go-chassis/pkg/util/iputil" "github.com/cenkalti/backoff" ) diff --git a/core/registry/util_test.go b/core/registry/util_test.go index 8d3ff67ca..4d0c8d6da 100644 --- a/core/registry/util_test.go +++ b/core/registry/util_test.go @@ -7,7 +7,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config/model" "github.com/ServiceComb/go-chassis/core/lager" "github.com/ServiceComb/go-chassis/core/registry" - "github.com/ServiceComb/go-chassis/util/iputil" + "github.com/ServiceComb/go-chassis/pkg/util/iputil" "github.com/stretchr/testify/assert" ) diff --git a/core/router/router_config.go b/core/router/router_config.go index 1758c9c86..7d3bdd6d3 100755 --- a/core/router/router_config.go +++ b/core/router/router_config.go @@ -10,7 +10,7 @@ import ( "github.com/ServiceComb/go-chassis/core/lager" chassisTLS "github.com/ServiceComb/go-chassis/core/tls" "github.com/ServiceComb/go-chassis/pkg/istio/client" - "github.com/ServiceComb/go-chassis/util/iputil" + "github.com/ServiceComb/go-chassis/pkg/util/iputil" ) // RouterTLS defines tls prefix diff --git a/core/server/server_manager.go b/core/server/server_manager.go index d090bf16a..804d5618b 100755 --- a/core/server/server_manager.go +++ b/core/server/server_manager.go @@ -10,7 +10,7 @@ import ( "github.com/ServiceComb/go-chassis/core/lager" "github.com/ServiceComb/go-chassis/core/registry" chassisTLS "github.com/ServiceComb/go-chassis/core/tls" - "github.com/ServiceComb/go-chassis/util/iputil" + "github.com/ServiceComb/go-chassis/pkg/util/iputil" ) //NewFunc returns a ProtocolServer diff --git a/eventlistener/circuit_breaker_event_listener_test.go b/eventlistener/circuit_breaker_event_listener_test.go index d36a60d67..de7a3029d 100755 --- a/eventlistener/circuit_breaker_event_listener_test.go +++ b/eventlistener/circuit_breaker_event_listener_test.go @@ -8,7 +8,7 @@ import ( "github.com/ServiceComb/go-chassis/core/config" "github.com/ServiceComb/go-chassis/core/lager" "github.com/ServiceComb/go-chassis/eventlistener" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/ServiceComb/go-archaius/core" "github.com/stretchr/testify/assert" diff --git a/util/fileutil/fileutil.go b/pkg/util/fileutil/fileutil.go similarity index 100% rename from util/fileutil/fileutil.go rename to pkg/util/fileutil/fileutil.go diff --git a/util/fileutil/fileutil_test.go b/pkg/util/fileutil/fileutil_test.go similarity index 97% rename from util/fileutil/fileutil_test.go rename to pkg/util/fileutil/fileutil_test.go index 92deff7b7..398d3ecb7 100755 --- a/util/fileutil/fileutil_test.go +++ b/pkg/util/fileutil/fileutil_test.go @@ -5,7 +5,7 @@ import ( "path/filepath" "testing" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/stretchr/testify/assert" ) diff --git a/util/iputil/ip.go b/pkg/util/iputil/ip.go similarity index 100% rename from util/iputil/ip.go rename to pkg/util/iputil/ip.go diff --git a/util/iputil/ip_test.go b/pkg/util/iputil/ip_test.go similarity index 93% rename from util/iputil/ip_test.go rename to pkg/util/iputil/ip_test.go index 1137c7cce..80b922409 100644 --- a/util/iputil/ip_test.go +++ b/pkg/util/iputil/ip_test.go @@ -2,7 +2,7 @@ package iputil_test import ( "github.com/ServiceComb/go-chassis/core/common" - "github.com/ServiceComb/go-chassis/util/iputil" + "github.com/ServiceComb/go-chassis/pkg/util/iputil" "github.com/stretchr/testify/assert" "testing" ) diff --git a/pkg/util/util.go b/pkg/util/util.go new file mode 100644 index 000000000..d533debb0 --- /dev/null +++ b/pkg/util/util.go @@ -0,0 +1,19 @@ +package util + +import ( + "errors" + "strings" +) + +//ErrInvalidPortName happens if your port name is illegal +var ErrInvalidPortName = errors.New("invalid port name") + +//ParsePortName a port name is composite by protocol-name,like http-admin,http-api,grpc-console,grpc-api +//ParsePortName return two string separately +func ParsePortName(n string) (string, string, error) { + tmp := strings.Split(n, "-") + if len(tmp) != 2 { + return "", "", ErrInvalidPortName + } + return tmp[0], tmp[1], nil +} diff --git a/pkg/util/util_test.go b/pkg/util/util_test.go new file mode 100644 index 000000000..35358d6e8 --- /dev/null +++ b/pkg/util/util_test.go @@ -0,0 +1,17 @@ +package util_test + +import ( + "github.com/ServiceComb/go-chassis/pkg/util" + "github.com/stretchr/testify/assert" + "testing" +) + +func TestParsePortName(t *testing.T) { + p, n, err := util.ParsePortName("http-admin") + assert.Equal(t, "http", p) + assert.Equal(t, "admin", n) + assert.NoError(t, err) + + _, _, err = util.ParsePortName("httpadmin") + assert.Error(t, err) +} diff --git a/server/restful/restful_server.go b/server/restful/restful_server.go index 2b9aae6fb..b1b24d24a 100755 --- a/server/restful/restful_server.go +++ b/server/restful/restful_server.go @@ -19,7 +19,7 @@ import ( "github.com/ServiceComb/go-chassis/core/server" "github.com/ServiceComb/go-chassis/metrics" - "github.com/ServiceComb/go-chassis/util/fileutil" + "github.com/ServiceComb/go-chassis/pkg/util/fileutil" "github.com/emicklei/go-restful" "github.com/emicklei/go-restful-swagger12" )