Class: Genba::Client::Keys

Inherits:
Object
  • Object
show all
Defined in:
lib/genba/client/keys.rb

Overview

Keys client

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Keys

Returns a new instance of Keys.



7
8
9
# File 'lib/genba/client/keys.rb', line 7

def initialize(client)
  @client = client
end

Instance Method Details

#black_list(keys = nil, headers = {}, options: {}) ⇒ Object



46
47
48
49
50
51
52
53
54
55
56
# File 'lib/genba/client/keys.rb', line 46

def black_list(keys = nil, headers = {}, options: {})
  raise 'Blacklist keys should be array' unless keys.is_a?(Array)
  raise 'Blacklist keys should be a KeyBlackListRequest class' unless key_black_list_request?(keys)

  keys.each do |k|
    raise k.errors.full_messages.to_s unless k.valid?
  end

  payload = keys.map(&:to_genba_json_payload)
  @client.rest_post_with_token('/blackListKeys', payload, headers, options)
end

#get_key_code_status(key_code, params = {}, headers = {}, options: {}) ⇒ Object



27
28
29
30
31
32
# File 'lib/genba/client/keys.rb', line 27

def get_key_code_status(key_code, params = {}, headers = {}, options: {})
  payload = params.merge(
    keyCode: key_code
  )
  @client.rest_get_with_token('/keys', payload, headers, options)
end

#get_key_status(key_id, params = {}, headers = {}, options: {}) ⇒ Object



34
35
36
# File 'lib/genba/client/keys.rb', line 34

def get_key_status(key_id, params = {}, headers = {}, options: {})
  @client.rest_get_with_token("/keys/#{key_id}", params, headers, options)
end

#get_keys(sku_id, quantity = 1, params = {}, headers = {}, options: {}) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/genba/client/keys.rb', line 18

def get_keys(sku_id, quantity = 1, params = {}, headers = {}, options: {})
  payload = params.merge(
    skuId: sku_id,
    quantity: quantity,
    customerAccountId: @client.
  )
  @client.rest_get_with_token('/keys', payload, headers, options)
end

#get_report_usage(keys = nil, headers = {}, options: {}) ⇒ Object



38
39
40
41
42
43
44
# File 'lib/genba/client/keys.rb', line 38

def get_report_usage(keys = nil, headers = {}, options: {})
  raise 'ReportUsage keys should be array' unless keys.is_a?(Array)
  raise 'ReportUseag keys should be a KeyReportRequest class' unless key_report_request?(keys)
  payload = keys.map(&:to_genba_json_payload)
  Genba::Util.log_debug "get_report_usage payload: #{payload.inspect}"
  @client.rest_post_with_token('/keyReport', payload, headers, options)
end

#get_test_keys(sku_id, headers = {}) ⇒ Object



11
12
13
14
15
16
# File 'lib/genba/client/keys.rb', line 11

def get_test_keys(sku_id, headers = {})
  params = {
    skuId: sku_id
  }
  @client.rest_get_with_token('/testKeys', params, headers)
end