Skip to content

Commit

Permalink
Merge pull request #25 from NorskHelsenett/fix/create-events-queue-once
Browse files Browse the repository at this point in the history
create events queue once
  • Loading branch information
rogerwesterbo authored Feb 11, 2025
2 parents dc0c706 + 321e359 commit 418c721
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 36 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,6 @@ func init() {
// It is called from the main function
// and it is blocking
func InitOrDie() {
queueArgs := amqp091.Table{}

err := apiconnections.RabbitMQConnection.GetChannel().ExchangeDeclare(
messagebuscontracts.ExchangeRor, // name
Expand Down Expand Up @@ -165,31 +164,4 @@ func InitOrDie() {
if err != nil {
panic(err)
}

ApiEventsqueue, err = apiconnections.RabbitMQConnection.GetChannel().QueueDeclare(
ApiEventsQueueName, // name
true, // durable
true, // delete when unused
false, // exclusive
false, // no-wait
queueArgs, // arguments, non quorum queue
)
if err != nil {
args := [...]any{ApiEventsQueueName, err}
msg := fmt.Sprintf("could not declare exchange %s,", args)
rlog.Fatal(msg, err)
}

err = apiconnections.RabbitMQConnection.GetChannel().QueueBind(
ApiEventsQueueName, // queue name
"", // routing key
messagebuscontracts.ExchangeRorEvents, // exchange
false,
nil,
)
if err != nil {
args := [...]any{ApiEventsQueueName, err}
msg := fmt.Sprintf("could not bind queue %s,", args)
rlog.Fatal(msg, err)
}
}
18 changes: 10 additions & 8 deletions internal/rabbitmq/apirabbitmqhandler/api_rabbitmq_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,16 @@ import (
func StartListening() {
go func() {
config := rabbitmqhandler.RabbitMQListnerConfig{
Client: apiconnections.RabbitMQConnection,
QueueName: apirabbitmqdefinitions.ApiEventsQueueName,
Consumer: "",
AutoAck: false,
Exclusive: false,
NoLocal: false,
NoWait: false,
Args: nil,
Client: apiconnections.RabbitMQConnection,
QueueName: apirabbitmqdefinitions.ApiEventsQueueName,
Consumer: "",
AutoAck: false,
Exclusive: false,
NoLocal: false,
NoWait: false,
Args: nil,
QueueAutoDelete: true,
Exchange: messagebuscontracts.ExchangeRorEvents,
}
rabbithandler := rabbitmqhandler.New(config, apimessagehandler{})
_ = apiconnections.RabbitMQConnection.RegisterHandler(rabbithandler)
Expand Down

0 comments on commit 418c721

Please sign in to comment.