INNER CODE UNIT · Go
main
shijuvar/go-distributed-sys · eventstream/reviewworker/main.go:33
func main() {
natsComponent := natsutil.NewNATSComponent(clientID)
err := natsComponent.ConnectToServer(nats.DefaultURL)
if err != nil {
log.Fatal(err)
}
jetStreamContext, err := natsComponent.JetStreamContext()
if err != nil {
log.Fatal(err)
}
// Create durable consumer
jetStreamContext.QueueSubscribe(subscribeSubject, queueGroup, func(msg *nats.Msg) {
msg.Ack()
var paymentDebited ordermodel.PaymentDebitedCommand
// Unmarshal JSON that represents the PaymentDebited data
err := json.Unmarshal(msg.Data, &paymentDebited)
log.Printf("Message subscribed on subject:%s, from:%s, data:%v", subscribeSubject, clientID, paymentDebited)
if err != nil {