Class: Shoryuken::Middleware::Server::AutoDelete
- Inherits:
-
Object
- Object
- Shoryuken::Middleware::Server::AutoDelete
- Defined in:
- lib/shoryuken/middleware/server/auto_delete.rb
Overview
Middleware that automatically deletes messages after successful processing. Only deletes messages when the worker has auto_delete enabled.
Instance Method Summary collapse
-
#call(worker, queue, sqs_msg, _body) { ... } ⇒ void
Processes a message and deletes it if auto_delete is enabled.
Instance Method Details
#call(worker, queue, sqs_msg, _body) { ... } ⇒ void
This method returns an undefined value.
Processes a message and deletes it if auto_delete is enabled
17 18 19 20 21 22 23 24 25 |
# File 'lib/shoryuken/middleware/server/auto_delete.rb', line 17 def call(worker, queue, sqs_msg, _body) yield return unless worker.class.auto_delete? entries = [sqs_msg].flatten.map.with_index { |, i| { id: i.to_s, receipt_handle: .receipt_handle } } Shoryuken::Client.queues(queue).(entries: entries) end |