diff --git a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/documentation.md b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/documentation.md index 6ad33cf..6843f77 100644 --- a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/documentation.md +++ b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/documentation.md @@ -14,7 +14,7 @@ ### Installation ```kotlin -install(KabbitMQ) { +install(RabbitMQ) { uri = "amqp://:@
:" defaultConnectionName = "" connectionAttempts = 20 @@ -74,6 +74,20 @@ rabbitmq { } ``` +### Consumer Example With Dispatchers.IO +```kotlin +rabbitmq { + basicConsume { + autoAck = true + queue = "demo-queue" + dispatcher = Dispatchers.IO + deliverCallback { tag, message -> + logger.info("Received message: $message") + } + } +} +``` + ### Library Calls Example ```kotlin rabbitmq { @@ -95,7 +109,4 @@ rabbitmq { basicConsume("demo-queue", true, consumer) } } -} -``` - -### For additional details check [repo](https://github.com/DamirDenis-Tudor/ktor-server-rabbitmq). \ No newline at end of file +} \ No newline at end of file diff --git a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/install.kt b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/install.kt index 5c61089..4ca1718 100644 --- a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/install.kt +++ b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/3.0/install.kt @@ -1,19 +1,19 @@ -import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.basicConsume -import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.basicPublish -import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.exchangeDeclare -import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.queueBind -import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.queueDeclare -import io.github.damir.denis.tudor.ktor.server.rabbitmq.plugin.RabbitMQ -import io.github.damir.denis.tudor.ktor.server.rabbitmq.plugin.rabbitmq +import io.github.damir.denis.tudor.ktor.server.rabbitmq.RabbitMQ +import io.github.damir.denis.tudor.ktor.server.rabbitmq.dsl.* +import io.github.damir.denis.tudor.ktor.server.rabbitmq.rabbitMQ import io.ktor.server.application.* -import io.ktor.server.request.receiveText import io.ktor.server.response.respondText -import io.ktor.server.routing.application import io.ktor.server.routing.get import io.ktor.server.routing.routing +import kotlinx.coroutines.Dispatchers fun Application.install() { - install(RabbitMQ) + install(RabbitMQ) { + uri = "amqp://:@
:" + defaultConnectionName = "default-connection" + dispatcherThreadPollSize = 2 + tlsEnabled = false + } rabbitmq { queueBind { @@ -29,6 +29,9 @@ fun Application.install() { durable = true } } + } + + rabbitmq { queueBind { queue = "test-queue" exchange = "test-exchange" @@ -44,6 +47,10 @@ fun Application.install() { "x-dead-letter-routing-key" to "dlq-dlx" ) } + }.onSuccess{ response-> + log.info("Successfully bind queue: $response") + }.onFailure{ error -> + log.error("Failed to bind queue: $error") } } @@ -51,8 +58,8 @@ fun Application.install() { get("/rabbitmq") { rabbitmq { basicPublish { - exchange = "demo-exchange" - routingKey = "demo-routing-key" + exchange = "test-exchange" + routingKey = "test-routing-key" message { "Hello Ktor!" } } } @@ -63,7 +70,8 @@ fun Application.install() { rabbitmq { basicConsume { autoAck = true - queue = "demo-queue" + queue = "test-queue" + dispatcher = Dispatchers.rabbitMQ deliverCallback { tag, message -> log.debug("Received message: $message") } diff --git a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/versions.ktor.yaml b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/versions.ktor.yaml index f378b18..dafdb26 100644 --- a/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/versions.ktor.yaml +++ b/plugins/server/io.github.damirdenis-tudor/ktor-server-rabbitmq/versions.ktor.yaml @@ -1 +1 @@ -"[3.0,)": io.github.damirdenis-tudor:ktor-server-rabbitmq:1.2.2+ \ No newline at end of file +"[3.0,)": io.github.damirdenis-tudor:ktor-server-rabbitmq:1.3.+ \ No newline at end of file