Class: SSO::Client::PassportVerifier

Inherits:
Object
  • Object
show all
Includes:
Benchmarking
Defined in:
lib/sso/client/passport_verifier.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Benchmarking

#benchmark

Methods included from Logging

#debug, #error, #fatal, #info, #logger, #progname, #warn

Constructor Details

#initialize(passport_id:, passport_state:, passport_secret:, user_ip:, user_agent: nil, device_id: nil) ⇒ PassportVerifier

Returns a new instance of PassportVerifier.



8
9
10
11
12
13
14
15
# File 'lib/sso/client/passport_verifier.rb', line 8

def initialize(passport_id:, passport_state:, passport_secret:, user_ip:, user_agent: nil, device_id: nil)
  @passport_id     = passport_id
  @passport_state  = passport_state
  @passport_secret = passport_secret
  @user_ip         = user_ip
  @user_agent      = user_agent
  @device_id       = device_id
end

Instance Attribute Details

#device_idObject (readonly)

Returns the value of attribute device_id.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def device_id
  @device_id
end

#passport_idObject (readonly)

Returns the value of attribute passport_id.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def passport_id
  @passport_id
end

#passport_secretObject (readonly)

Returns the value of attribute passport_secret.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def passport_secret
  @passport_secret
end

#passport_stateObject (readonly)

Returns the value of attribute passport_state.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def passport_state
  @passport_state
end

#user_agentObject (readonly)

Returns the value of attribute user_agent.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def user_agent
  @user_agent
end

#user_ipObject (readonly)

Returns the value of attribute user_ip.



6
7
8
# File 'lib/sso/client/passport_verifier.rb', line 6

def user_ip
  @user_ip
end

Instance Method Details

#callObject



17
18
19
20
21
22
23
24
# File 'lib/sso/client/passport_verifier.rb', line 17

def call
  fetch_response { |failure| return failure }
  interpret_response

rescue JSON::ParserError
  error { 'SSO Server response is not valid JSON.' }
  error { response.inspect }
end