Class: SpreeCmCommissioner::UserIdTokenChecker

Inherits:
BaseInteractor show all
Defined in:
app/interactors/spree_cm_commissioner/user_id_token_checker.rb

Instance Method Summary collapse

Instance Method Details

#callObject

:id_token



4
5
6
7
8
9
10
11
12
# File 'app/interactors/spree_cm_commissioner/user_id_token_checker.rb', line 4

def call
  firebase_id_token_context = SpreeCmCommissioner::FirebaseIdTokenProvider.call(id_token: context.id_token)

  if firebase_id_token_context.success?
    validate_user_by_provider(firebase_id_token_context.provider)
  else
    context.fail!(message: firebase_id_token_context.message)
  end
end

#validate_user_by_provider(provider) ⇒ Object

:identity_type, :sub



15
16
17
18
19
20
21
22
# File 'app/interactors/spree_cm_commissioner/user_id_token_checker.rb', line 15

def validate_user_by_provider(provider)
  identity_checker = SpreeCmCommissioner::UserIdentityChecker.call(provider)
  if identity_checker.success?
    context.user = identity_checker.user
  else
    context.fail!(message: identity_checker.message)
  end
end