From 65df711b010a2d153e8768960d724dc26b995570 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Sat, 18 Jan 2020 01:29:53 +0000 Subject: [PATCH] move nats local logic --- broker/nats/nats.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/broker/nats/nats.go b/broker/nats/nats.go index 775c92f0..44d66216 100644 --- a/broker/nats/nats.go +++ b/broker/nats/nats.go @@ -119,17 +119,17 @@ func (n *natsBroker) serve(exit chan bool) error { // with no address we just default it // this is a local client address - if len(n.addrs) == 0 || n.local { + if len(n.addrs) == 0 { host = "127.0.0.1" port = -1 local = true - // with a local address we parse it } else { address := n.addrs[0] if strings.HasPrefix(address, "nats://") { address = strings.TrimPrefix(address, "nats://") } + // check if its a local address and only then embed if addr.IsLocal(address) { h, p, err := net.SplitHostPort(address) if err == nil { @@ -266,9 +266,11 @@ func (n *natsBroker) Connect() error { // create exit chan n.exit = make(chan bool) - // start the server if needed - if err := n.serve(n.exit); err != nil { - return err + // start embedded server if asked to + if n.local { + if err := n.serve(n.exit); err != nil { + return err + } } // set to connected