From 7aa44b18113bd0434a5572f9bfb2c01286b8c9c6 Mon Sep 17 00:00:00 2001 From: wagslane Date: Tue, 7 Dec 2021 08:44:29 -0700 Subject: [PATCH] make examples work together --- README.md | 42 +++++++++++++++++++++-------------- examples/consumer/main.go | 5 +++-- examples/publisher/.gitignore | 1 + 3 files changed, 29 insertions(+), 19 deletions(-) create mode 100644 examples/publisher/.gitignore diff --git a/README.md b/README.md index 6b30bae..b50b9aa 100644 --- a/README.md +++ b/README.md @@ -62,17 +62,21 @@ if err != nil { log.Fatal(err) } err = consumer.StartConsuming( - func(d rabbitmq.Delivery) rabbitmq.Action { - log.Printf("consumed: %v", string(d.Body)) - // rabbitmq.Ack, rabbitmq.NackDiscard, rabbitmq.NackRequeue - return rabbitmq.Ack - }, - "my_queue", - []string{"routing_key1", "routing_key2"}, - rabbitmq.WithConsumeOptionsConcurrency(10), - rabbitmq.WithConsumeOptionsQueueDurable, - rabbitmq.WithConsumeOptionsQuorum, -) + func(d rabbitmq.Delivery) rabbitmq.Action { + log.Printf("consumed: %v", string(d.Body)) + // rabbitmq.Ack, rabbitmq.NackDiscard, rabbitmq.NackRequeue + return rabbitmq.Ack + }, + "my_queue", + []string{"routing_key", "routing_key_2"}, + rabbitmq.WithConsumeOptionsConcurrency(10), + rabbitmq.WithConsumeOptionsQueueDurable, + rabbitmq.WithConsumeOptionsQuorum, + rabbitmq.WithConsumeOptionsBindingExchangeName("events"), + rabbitmq.WithConsumeOptionsBindingExchangeKind("topic"), + rabbitmq.WithConsumeOptionsBindingExchangeDurable, + rabbitmq.WithConsumeOptionsConsumerName(consumerName), + ) if err != nil { log.Fatal(err) } @@ -106,12 +110,12 @@ if err != nil { log.Fatal(err) } err = publisher.Publish( - []byte("hello, world"), - []string{"routing_key"}, - // leave blank for defaults - rabbitmq.WithPublishOptionsContentType("application/json"), - rabbitmq.WithPublishOptionsMandatory, - rabbitmq.WithPublishOptionsPersistentDelivery, + []byte("hello, world"), + []string{"routing_key"}, + rabbitmq.WithPublishOptionsContentType("application/json"), + rabbitmq.WithPublishOptionsMandatory, + rabbitmq.WithPublishOptionsPersistentDelivery, + rabbitmq.WithPublishOptionsExchange("events"), ) if err != nil { log.Fatal(err) @@ -124,6 +128,10 @@ go func() { }() ``` +## Other usage examples + +See the [examples](examples) directory for more ideas. + ## 💬 Contact [![Twitter Follow](https://img.shields.io/twitter/follow/wagslane.svg?label=Follow%20Wagslane&style=social)](https://twitter.com/intent/follow?screen_name=wagslane) diff --git a/examples/consumer/main.go b/examples/consumer/main.go index ece3f31..9923de0 100644 --- a/examples/consumer/main.go +++ b/examples/consumer/main.go @@ -22,9 +22,10 @@ func main() { log.Fatal(err) } err = consumer.StartConsuming( - func(d rabbitmq.Delivery) (action rabbitmq.Action) { + func(d rabbitmq.Delivery) rabbitmq.Action { log.Printf("consumed: %v", string(d.Body)) - return + // rabbitmq.Ack, rabbitmq.NackDiscard, rabbitmq.NackRequeue + return rabbitmq.Ack }, "my_queue", []string{"routing_key", "routing_key_2"}, diff --git a/examples/publisher/.gitignore b/examples/publisher/.gitignore new file mode 100644 index 0000000..425ed0a --- /dev/null +++ b/examples/publisher/.gitignore @@ -0,0 +1 @@ +publisher