Class: QueueIt::ExtractQueueNumber

Inherits:
Object
  • Object
show all
Defined in:
lib/queue_it/extract_queue_number.rb

Instance Method Summary collapse

Instance Method Details

#call(secret_key:, request_url:, request_params:) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/queue_it/extract_queue_number.rb', line 5

def call(secret_key:, request_url:, request_params:)
  encrypted_place_in_queue = request_params['p']
  expected_hash = request_params['h']

  raise QueueIt::MissingArgsGiven.new if queue_it_params_missing?(request_params)

  if verify_md5_hash?(request_url, expected_hash, secret_key)
    return decrypted_place_in_queue(encrypted_place_in_queue)
  else
    raise QueueIt::NotAuthorized.new
  end
end