Class: Algolia::UpdateApiKeyResponse

Inherits:
BaseResponse show all
Includes:
Helpers
Defined in:
lib/algolia/responses/update_api_key_response.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Helpers

#check_array, #check_object, #chunk, #deserialize_settings, #get_object_id, #get_option, #handle_params, #hash_includes_subset?, included, #json_to_hash, #path_encode, #symbolize_hash, #to_json, #to_query_string

Constructor Details

#initialize(client, response, request_options) ⇒ UpdateApiKeyResponse

Returns a new instance of UpdateApiKeyResponse.

Parameters:

  • client (Search::Client)

    Algolia Search Client used for verification

  • response (Hash)

    Raw response from the client

  • request_options (Hash)

    request_options used to find the api key



10
11
12
13
14
15
# File 'lib/algolia/responses/update_api_key_response.rb', line 10

def initialize(client, response, request_options)
  @client          = client
  @raw_response    = response
  @request_options = request_options
  @done            = false
end

Instance Attribute Details

#raw_responseObject (readonly)

Returns the value of attribute raw_response.



4
5
6
# File 'lib/algolia/responses/update_api_key_response.rb', line 4

def raw_response
  @raw_response
end

Instance Method Details

#wait(opts = {}) ⇒ Object

Wait for the task to complete

Parameters:

  • opts (Hash) (defaults to: {})

    contains extra parameters to send with your query



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/algolia/responses/update_api_key_response.rb', line 21

def wait(opts = {})
  retries_count = 1

  until @done
    begin
      api_key = @client.get_api_key(@raw_response[:key], opts)
      @done   = hash_includes_subset?(api_key, @request_options)
    rescue AlgoliaError => e
      raise e unless e.code == 404
      retries_count    += 1
      time_before_retry = retries_count * Defaults::WAIT_TASK_DEFAULT_TIME_BEFORE_RETRY
      sleep(time_before_retry.to_f / 1000)
    end
  end

  self
end