Явное подтверждение JMS с использованием Alpakka

Я сейчас пользуюсь Akka-Camel для интеграции моего приложения на основе Akka с различными очередями сообщений.
Теперь, когда я хочу перейти на последнюю версию Akka, я вижу, что эта интеграция устарела.

Я пытался использовать alpakka-jsm интеграция, но не могу увидеть, могу ли я выполнить явный ack в очереди сообщений, как только я обработал сообщение. Существует ли эта функциональность в этом новом компоненте?

1 ответ

Alpakka 0.15 позволяет настраивать режим подтверждения в коннекторе JMS. Пример, который адаптирован из связанной документации:

val jmsSource: Source[Message, NotUsed] = JmsSource(
  JmsSourceSettings(connectionFactory)
    .withQueue("myqueue")
    .withAcknowledgeMode(AcknowledgeMode.ClientAcknowledge)
)

val result = jmsSource
  .map {
    case textMessage: TextMessage =>
      val text = textMessage.getText
      textMessage.acknowledge()
      text
  }
  .runWith(Sink.seq)
Другие вопросы по тегам