From ebe3633082ee472e2b8cb32ae76989f0dccf343f Mon Sep 17 00:00:00 2001 From: Asim Aslam <asim@aslam.me> Date: Mon, 1 Jul 2019 22:59:11 +0100 Subject: [PATCH] move network initialiser code --- network/default.go | 43 +++++++++++++++++++++++++++++++++++++++++++ network/network.go | 44 +------------------------------------------- 2 files changed, 44 insertions(+), 43 deletions(-) diff --git a/network/default.go b/network/default.go index 8fe5362b..24f42206 100644 --- a/network/default.go +++ b/network/default.go @@ -14,6 +14,7 @@ import ( "github.com/micro/go-micro/codec/proto" "github.com/micro/go-micro/config/options" "github.com/micro/go-micro/network/proxy" + "github.com/micro/go-micro/network/proxy/mucp" "github.com/micro/go-micro/network/resolver" "github.com/micro/go-micro/network/router" "github.com/micro/go-micro/registry" @@ -683,3 +684,45 @@ func (s *socket) recv(m *Message, v interface{}) error { // return unmarshalled return s.codec.Unmarshal(m.Body, v.(gproto.Message)) } + +// newNetwork returns a new network interface +func newNetwork(opts ...options.Option) *network { + options := options.NewOptions(opts...) + + // new network instance + net := &network{ + id: DefaultId, + } + + // get network id + id, ok := options.Values().Get("network.id") + if ok { + net.id = id.(string) + } + + // get router + r, ok := options.Values().Get("network.router") + if ok { + net.router = r.(router.Router) + } else { + net.router = router.DefaultRouter + } + + // get proxy + p, ok := options.Values().Get("network.proxy") + if ok { + net.proxy = p.(proxy.Proxy) + } else { + net.proxy = new(mucp.Proxy) + } + + // get resolver + res, ok := options.Values().Get("network.resolver") + if ok { + net.resolver = res.(resolver.Resolver) + } else { + net.resolver = new(nreg.Resolver) + } + + return net +} diff --git a/network/network.go b/network/network.go index 6d619254..c8f998ea 100644 --- a/network/network.go +++ b/network/network.go @@ -3,11 +3,6 @@ package network import ( "github.com/micro/go-micro/config/options" - "github.com/micro/go-micro/network/proxy" - "github.com/micro/go-micro/network/proxy/mucp" - "github.com/micro/go-micro/network/resolver" - "github.com/micro/go-micro/network/resolver/registry" - "github.com/micro/go-micro/network/router" ) // Network defines a network interface. The network is a single @@ -67,42 +62,5 @@ var ( // NewNetwork returns a new network interface func NewNetwork(opts ...options.Option) Network { - options := options.NewOptions(opts...) - - // new network instance - net := &network{ - id: DefaultId, - } - - // get network id - id, ok := options.Values().Get("network.id") - if ok { - net.id = id.(string) - } - - // get router - r, ok := options.Values().Get("network.router") - if ok { - net.router = r.(router.Router) - } else { - net.router = router.DefaultRouter - } - - // get proxy - p, ok := options.Values().Get("network.proxy") - if ok { - net.proxy = p.(proxy.Proxy) - } else { - net.proxy = new(mucp.Proxy) - } - - // get resolver - res, ok := options.Values().Get("network.resolver") - if ok { - net.resolver = res.(resolver.Resolver) - } else { - net.resolver = new(registry.Resolver) - } - - return net + return newNetwork(opts...) }