class SmartId::Api::Authentication::ConfirmationPoller
Constants
- BASE_URI
Public Class Methods
confirm(session_id:, authentication_hash:, poll: true)
click to toggle source
# File lib/smart_id/api/authentication/confirmation_poller.rb, line 6 def self.confirm(session_id:, authentication_hash:, poll: true) new(session_id, authentication_hash, poll).call end
new(session_id, authentication_hash, poll)
click to toggle source
# File lib/smart_id/api/authentication/confirmation_poller.rb, line 11 def initialize(session_id, authentication_hash, poll) @session_id = session_id @authentication_hash = authentication_hash @poll = poll end
Public Instance Methods
call()
click to toggle source
# File lib/smart_id/api/authentication/confirmation_poller.rb, line 17 def call params = { timeoutMs: SmartId.poller_timeout_seconds * 1000 } uri = BASE_URI + @session_id raw_response = SmartId::Api::Request.execute(method: :get, uri: uri, params: params) response = SmartId::Api::ConfirmationResponse.new( JSON.parse(raw_response.body), @authentication_hash.hash_data ) # repeat request if confirmation is still running if response.confirmation_running? && @poll call else response end end