4 Commits

Author SHA1 Message Date
jar3b
d24c89dc41 bump: update libs in go.mod 2020-09-14 15:52:26 +03:00
jar3b
d159a8e392 fix: NatsClient in FinalizeNats 2020-02-21 16:08:15 +03:00
jar3b
b4635386bb feat: add FinalizeNats function; chore: add checks for non-nil connections before close 2020-02-21 15:47:48 +03:00
jar3b
c1708a5308 bump: nats-streaming-server v0.16.2 -> v0.17.0 2020-02-21 14:50:02 +03:00
2 changed files with 28 additions and 10 deletions

15
go.mod
View File

@@ -1,12 +1,13 @@
module github.com/jar3b/nacl module github.com/jar3b/nacl
go 1.13 go 1.15
require ( require (
github.com/jar3b/grawt v0.1.5 github.com/golang/protobuf v1.4.2 // indirect
github.com/nats-io/nats-server/v2 v2.1.2 // indirect github.com/jar3b/grawt v0.1.6
github.com/nats-io/nats-streaming-server v0.16.2 // indirect github.com/nats-io/nats-server/v2 v2.1.8 // indirect
github.com/nats-io/nats.go v1.9.1 github.com/nats-io/nats-streaming-server v0.18.0 // indirect
github.com/nats-io/stan.go v0.6.0 github.com/nats-io/nats.go v1.10.0
github.com/sirupsen/logrus v1.4.2 github.com/nats-io/stan.go v0.7.0
google.golang.org/protobuf v1.25.0 // indirect
) )

17
nacl.go
View File

@@ -17,6 +17,7 @@ type (
Msg = stan.Msg Msg = stan.Msg
NatsMsg = nats.Msg NatsMsg = nats.Msg
Subscription = stan.Subscription Subscription = stan.Subscription
NatsSubscription = nats.Subscription
) )
func SetupNats(host string, port int, user string, pass string, closeHandler *grawt.CloseHandler) error { func SetupNats(host string, port int, user string, pass string, closeHandler *grawt.CloseHandler) error {
@@ -64,6 +65,9 @@ func SetupStan(clusterName string, clientId string, host string, port int, user
} }
func FinalizeStan(subscriptions *[]Subscription) error { func FinalizeStan(subscriptions *[]Subscription) error {
if StanClient == nil {
return fmt.Errorf("stan client is not initialized")
}
for _, subscription := range *subscriptions { for _, subscription := range *subscriptions {
_ = subscription.Unsubscribe() _ = subscription.Unsubscribe()
} }
@@ -74,3 +78,16 @@ func FinalizeStan(subscriptions *[]Subscription) error {
return nil return nil
} }
func FinalizeNats(subscriptions *[]*NatsSubscription) error {
if NatsClient == nil {
return fmt.Errorf("stan client is not initialized")
}
for _, subscription := range *subscriptions {
_ = subscription.Unsubscribe()
}
NatsClient.Close()
return nil
}