Class: Dogtag::Request

Inherits:
Object
  • Object
show all
Includes:
Mixins::Redis
Defined in:
lib/dogtag/request.rb

Constant Summary collapse

MAX_TRIES =
5

Constants included from Mixins::Redis

Mixins::Redis::DEFAULT_REDIS_URL

Instance Method Summary collapse

Methods included from Mixins::Redis

#redis

Constructor Details

#initialize(data_type, count = 1) ⇒ Request

Returns a new instance of Request.

Raises:

  • (ArgumentError)


7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/dogtag/request.rb', line 7

def initialize(data_type, count = 1)
  raise ArgumentError, 'data_type must be a number' unless data_type.is_a? Numeric
  unless Dogtag::DATA_TYPE_ALLOWED_RANGE.include? data_type
    raise ArgumentError, "data_type is outside the allowed range of #{Dogtag::DATA_TYPE_ALLOWED_RANGE}"
  end
  raise ArgumentError, 'count must be a number' unless count.is_a? Numeric
  raise ArgumentError, 'count must be greater than zero' unless count > 0

  @tries = 0
  @data_type = data_type
  @count = count
end

Instance Method Details

#responseObject



20
21
22
# File 'lib/dogtag/request.rb', line 20

def response
  Response.new(try_redis_response)
end