class Yoti::DocScan::Session::Create::SessionSpecification

Public Class Methods

builder() click to toggle source

@return [SessionSpecificationBuilder]

# File lib/yoti/doc_scan/session/create/session_specification.rb, line 78
def self.builder
  SessionSpecificationBuilder.new
end
new( client_session_token_ttl, resources_ttl, user_tracking_id, notifications, requested_checks, requested_tasks, sdk_config, required_documents, block_biometric_consent = nil ) click to toggle source

@param [Integer] client_session_token_ttl @param [Integer] resources_ttl @param [String] user_tracking_id @param [NotificationConfig] notifications @param [Array<RequestedCheck>] requested_checks @param [Array<RequestedTask>] requested_tasks @param [SdkConfig] sdk_config @param [Array<RequiredDocument>] required_documents @param [Boolean] block_biometric_consent

# File lib/yoti/doc_scan/session/create/session_specification.rb, line 19
def initialize(
  client_session_token_ttl,
  resources_ttl,
  user_tracking_id,
  notifications,
  requested_checks,
  requested_tasks,
  sdk_config,
  required_documents,
  block_biometric_consent = nil
)
  Validation.assert_is_a(Integer, client_session_token_ttl, 'client_session_token_ttl', true)
  @client_session_token_ttl = client_session_token_ttl

  Validation.assert_is_a(Integer, resources_ttl, 'resources_ttl', true)
  @resources_ttl = resources_ttl

  Validation.assert_is_a(String, user_tracking_id, 'user_tracking_id', true)
  @user_tracking_id = user_tracking_id

  Validation.assert_is_a(NotificationConfig, notifications, 'notifications', true)
  @notifications = notifications

  Validation.assert_is_a(Array, requested_checks, 'requested_checks', true)
  @requested_checks = requested_checks

  Validation.assert_is_a(Array, requested_tasks, 'requested_tasks', true)
  @requested_tasks = requested_tasks

  Validation.assert_is_a(SdkConfig, sdk_config, 'sdk_config', true)
  @sdk_config = sdk_config

  Validation.assert_is_a(Array, required_documents, 'required_documents', true)
  @required_documents = required_documents

  @block_biometric_consent = block_biometric_consent
end

Public Instance Methods

as_json(*_args) click to toggle source
# File lib/yoti/doc_scan/session/create/session_specification.rb, line 61
def as_json(*_args)
  {
    client_session_token_ttl: @client_session_token_ttl,
    resources_ttl: @resources_ttl,
    user_tracking_id: @user_tracking_id,
    notifications: @notifications,
    requested_checks: @requested_checks.map(&:as_json),
    requested_tasks: @requested_tasks.map(&:as_json),
    sdk_config: @sdk_config,
    required_documents: @required_documents.map(&:as_json),
    block_biometric_consent: @block_biometric_consent
  }.compact
end
to_json(*_args) click to toggle source
# File lib/yoti/doc_scan/session/create/session_specification.rb, line 57
def to_json(*_args)
  as_json.to_json
end