Sha256: ae904a7ed861763aac00d74fa92473b86113a061274b56f53fde18d2b5fc7fec

Contents?: true

Size: 825 Bytes

Versions: 1

Compression:

Stored size: 825 Bytes

Contents

# frozen_string_literal: true

module Yext
  module Api
    module Concerns
      # This module adds attributes to a module for saving and setting the rate limits returned
      # from the Yext API.
      module RateLimits
        attr_reader :rate_limit_remaining,
                    :rate_limit_limit,
                    :rate_limit_reset_at,
                    :last_status,
                    :last_meta

        def last_status=(last_status)
          @last_status = last_status
        end

        def last_meta=(last_meta)
          @last_meta = last_meta
        end

        def update_rates(remaining: 1_000, limit: 1_000, reset_at: Time.now)
          @rate_limit_limit     = limit
          @rate_limit_remaining = remaining
          @rate_limit_reset_at  = reset_at
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
yext-api-0.1.1 lib/yext/api/concerns/rate_limits.rb