class Yoti::DocScan::Session::Retrieve::ResourceContainer

Attributes

id_documents[R]

@return [Array<IdDocumentResourceResponse>]

liveness_capture[R]

@return [Array<LivenessResourceResponse>]

supplementary_documents[R]

@return [Array<SupplementaryDocumentResourceResponse>]

Public Class Methods

new(resources) click to toggle source

@param [Hash] resources

# File lib/yoti/doc_scan/session/retrieve/resource_container.rb, line 20
def initialize(resources)
  @id_documents = parse_id_documents(resources)
  @supplementary_documents = parse_supplementary_documents(resources)

  if resources['liveness_capture'].nil?
    @liveness_capture = []
  else
    Validation.assert_is_a(Array, resources['liveness_capture'], 'liveness_capture')
    @liveness_capture = resources['liveness_capture'].map do |resource|
      case resource['liveness_type']
      when Constants::ZOOM
        ZoomLivenessResourceResponse.new(resource)
      else
        LivenessResourceResponse.new(resource)
      end
    end
  end
end

Public Instance Methods

zoom_liveness_resources() click to toggle source

@return [Array<ZoomLivenessResourceResponse>]

# File lib/yoti/doc_scan/session/retrieve/resource_container.rb, line 42
def zoom_liveness_resources
  @liveness_capture.select { |resource| resource.is_a?(ZoomLivenessResourceResponse) }
end

Private Instance Methods

parse_id_documents(resources) click to toggle source
# File lib/yoti/doc_scan/session/retrieve/resource_container.rb, line 48
def parse_id_documents(resources)
  return [] if resources['id_documents'].nil?

  Validation.assert_is_a(Array, resources['id_documents'], 'id_documents')
  resources['id_documents'].map do |resource|
    IdDocumentResourceResponse.new(resource)
  end
end
parse_supplementary_documents(resources) click to toggle source
# File lib/yoti/doc_scan/session/retrieve/resource_container.rb, line 57
def parse_supplementary_documents(resources)
  return [] if resources['supplementary_documents'].nil?

  Validation.assert_is_a(Array, resources['supplementary_documents'], 'supplementary_documents')
  resources['supplementary_documents'].map do |resource|
    SupplementaryDocumentResourceResponse.new(resource)
  end
end