class Yoti::DocScan::Session::Retrieve::TaskResponse

Attributes

created[R]

@return [<DateTime>]

generated_checks[R]

@return [Array<GeneratedCheckResponse>]

generated_media[R]

@return [Array<GeneratedMedia>]

id[R]

@return [String]

last_updated[R]

@return [<DateTime>]

resources_used[R]

@return [Array<String>]

state[R]

@return [String]

type[R]

@return [String]

Public Class Methods

new(task) click to toggle source

@param [Hash] task

# File lib/yoti/doc_scan/session/retrieve/task_response.rb, line 35
def initialize(task)
  Validation.assert_is_a(String, task['type'], 'type', true)
  @type = task['type']

  Validation.assert_is_a(String, task['id'], 'id', true)
  @id = task['id']

  Validation.assert_is_a(String, task['state'], 'state', true)
  @state = task['state']

  Validation.assert_is_a(Array, task['resources_used'], 'resources_used', true)
  @resources_used = task['resources_used']

  @created = DateTime.parse(task['created']) unless task['created'].nil?
  @last_updated = DateTime.parse(task['last_updated']) unless task['last_updated'].nil?

  if task['generated_checks'].nil?
    @generated_checks = []
  else
    Validation.assert_is_a(Array, task['generated_checks'], 'generated_checks')
    @generated_checks = map_generated_checks(task['generated_checks'])
  end

  if task['generated_media'].nil?
    @generated_media = []
  else
    Validation.assert_is_a(Array, task['generated_media'], 'generated_media')
    @generated_media = task['generated_media'].map { |media| GeneratedMedia.new(media) }
  end
end

Private Instance Methods

map_generated_checks(generated_checks) click to toggle source

@param [Array<Hash>] generated_checks

@return [Array<GeneratedCheckResponse>]

# File lib/yoti/doc_scan/session/retrieve/task_response.rb, line 73
def map_generated_checks(generated_checks)
  generated_checks.map do |check|
    case check['type']
    when Constants::ID_DOCUMENT_TEXT_DATA_CHECK
      GeneratedTextDataCheckResponse.new(check)
    when Constants::SUPPLEMENTARY_DOCUMENT_TEXT_DATA_CHECK
      GeneratedSupplementaryDocumentTextDataCheckResponse.new(check)
    else
      GeneratedCheckResponse.new(check)
    end
  end
end