INNER CODE UNIT · Go
main
shijuvar/go-distributed-sys · eventstream/paymentworker/main.go:31
func main() {
natsComponent := natsutil.NewNATSComponent(clientID)
err := natsComponent.ConnectToServer(nats.DefaultURL)
if err != nil {
log.Fatal(err)
}
// Creates JetStreamContext for create consumer
jetStreamContext, err := natsComponent.JetStreamContext()
if err != nil {
log.Fatal(err)
}
// Create push based consumer as durable
jetStreamContext.QueueSubscribe(subscribeSubject, queueGroup, func(msg *nats.Msg) {
msg.Ack()
var order ordermodel.Order
// Unmarshal JSON that represents the Order data
err := json.Unmarshal(msg.Data, &order)
if err != nil {