Sha256: 66253d950cd154236fb39f731af1b8fe9a217b718726ad78f0208aa9d1c86ebf
Contents?: true
Size: 927 Bytes
Versions: 1
Compression:
Stored size: 927 Bytes
Contents
# frozen_string_literal: true # https://upstash.com/docs/qstash/api/messages/cancel # https://upstash.com/docs/qstash/api/messages/bulk-cancel module Qstash module Message class Cancel include Qstash::Callable attr_reader :message_ids, :headers def initialize(message_ids, headers: {}) @message_ids = Array(message_ids) @headers = headers end def call uri = URI(endpoint) client = Qstash::HttpClient.new(uri) client.delete(body, headers) end private def base_url Qstash.config.url.sub(/\/$/, "") end def body (message_ids.length > 1) ? {messageIds: message_ids} : {} end def endpoint [ base_url, (message_ids.length > 1) ? Endpoints::BULK_CANCEL_ENDPOINT : "#{Endpoints::CANCEL_ENDPOINT}/#{message_ids.first}" ].join("/") end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
qstash-rb-0.1.3 | lib/qstash/message/cancel.rb |