Sha256: 94218fef8a47a5cbc9de52f166c63cf74abe44441a5176fae2a308d4b58342e7

Contents?: true

Size: 529 Bytes

Versions: 5

Compression:

Stored size: 529 Bytes

Contents

require 'evernote-thrift'

module Resque
  module Plugins
    module RateLimited
      class EvernoteQueue < BaseApiQueue
        @queue = :evernote_api

        def self.perform(klass, *params)
          super
        rescue Evernote::EDAM::Error::EDAMSystemException => e
          raise unless e.errorCode == Evernote::EDAM::Error::EDAMErrorCode::RATE_LIMIT_REACHED
          pause_until(Time.now + 60 * e.rateLimitDuration.seconds)
          rate_limited_requeue(self, klass, *params)
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
resque-rate_limited-1.2.4 lib/resque/plugins/rate_limited/apis/evernote_queue.rb
resque-rate_limited-1.2.3 lib/resque/plugins/rate_limited/apis/evernote_queue.rb
resque-rate_limited-1.2.2 lib/resque/plugins/rate_limited/apis/evernote_queue.rb
resque-rate_limited-1.2.0 lib/resque/plugins/rate_limited/apis/evernote_queue.rb
resque-rate_limited-1.1.0 lib/resque/plugins/rate_limited/apis/evernote_queue.rb