Class: WorkOS::AuthenticationFactor

Inherits:
Types::BaseModel show all
Defined in:
lib/workos/multi_factor_auth/authentication_factor.rb

Constant Summary collapse

HASH_ATTRS =
{
  object: :object,
  id: :id,
  type: :type,
  user_id: :user_id,
  sms: :sms,
  totp: :totp,
  created_at: :created_at,
  updated_at: :updated_at
}.freeze

Instance Attribute Summary collapse

Attributes inherited from Types::BaseModel

#last_response

Instance Method Summary collapse

Methods inherited from Types::BaseModel

normalize

Methods included from HashProvider

#inspect, #to_h, #to_json

Constructor Details

#initialize(json) ⇒ AuthenticationFactor

Returns a new instance of AuthenticationFactor.



28
29
30
31
32
33
34
35
36
37
38
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 28

def initialize(json)
  hash = self.class.normalize(json)
  @object = hash[:object]
  @id = hash[:id]
  @type = hash[:type]
  @user_id = hash[:user_id]
  @sms = hash[:sms] ? WorkOS::AuthenticationFactorSms.new(hash[:sms]) : nil
  @totp = hash[:totp] ? WorkOS::AuthenticationFactorTotp.new(hash[:totp]) : nil
  @created_at = hash[:created_at]
  @updated_at = hash[:updated_at]
end

Instance Attribute Details

#created_atObject

Returns the value of attribute created_at.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def created_at
  @created_at
end

#idObject

Returns the value of attribute id.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def id
  @id
end

#objectObject

Returns the value of attribute object.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def object
  @object
end

#smsObject

Returns the value of attribute sms.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def sms
  @sms
end

#totpObject

Returns the value of attribute totp.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def totp
  @totp
end

#typeObject

Returns the value of attribute type.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def type
  @type
end

#updated_atObject

Returns the value of attribute updated_at.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def updated_at
  @updated_at
end

#user_idObject

Returns the value of attribute user_id.



18
19
20
# File 'lib/workos/multi_factor_auth/authentication_factor.rb', line 18

def user_id
  @user_id
end