class GoogleSignIn::Identity

Public Class Methods

new(token) click to toggle source
# File lib/google_sign_in/identity.rb, line 10
def initialize(token)
  ensure_client_id_present
  set_extracted_payload(token)
end

Public Instance Methods

avatar_url() click to toggle source
# File lib/google_sign_in/identity.rb, line 31
def avatar_url
  @payload["picture"]
end
email_address() click to toggle source
# File lib/google_sign_in/identity.rb, line 23
def email_address
  @payload["email"]
end
email_verified?() click to toggle source
# File lib/google_sign_in/identity.rb, line 27
def email_verified?
  @payload["email_verified"] == true
end
family_name() click to toggle source
# File lib/google_sign_in/identity.rb, line 47
def family_name
  @payload["family_name"]
end
given_name() click to toggle source
# File lib/google_sign_in/identity.rb, line 43
def given_name
  @payload["given_name"]
end
hosted_domain() click to toggle source
# File lib/google_sign_in/identity.rb, line 39
def hosted_domain
  @payload["hd"]
end
locale() click to toggle source
# File lib/google_sign_in/identity.rb, line 35
def locale
  @payload["locale"]
end
name() click to toggle source
# File lib/google_sign_in/identity.rb, line 19
def name
  @payload["name"]
end
user_id() click to toggle source
# File lib/google_sign_in/identity.rb, line 15
def user_id
  @payload["sub"]
end

Private Instance Methods

ensure_client_id_present() click to toggle source
# File lib/google_sign_in/identity.rb, line 54
def ensure_client_id_present
  if client_id.blank?
    raise ArgumentError, "GoogleSignIn.client_id must be set to validate identity"
  end
end
set_extracted_payload(token) click to toggle source
# File lib/google_sign_in/identity.rb, line 60
def set_extracted_payload(token)
  @payload = validator.check(token, client_id)
rescue GoogleIDToken::ValidationError => error
  raise ValidationError, error.message
end