Class: Comet::WebAuthnCredentialDescriptor
- Inherits:
-
Object
- Object
- Comet::WebAuthnCredentialDescriptor
- Defined in:
- lib/comet/models/web_authn_credential_descriptor.rb
Overview
WebAuthnCredentialDescriptor is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#credential_id ⇒ Object
Returns the value of attribute credential_id.
-
#transport ⇒ Object
Returns the value of attribute transport.
-
#type ⇒ Object
Returns the value of attribute type.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ WebAuthnCredentialDescriptor
constructor
A new instance of WebAuthnCredentialDescriptor.
-
#to_h ⇒ Hash
The complete object as a Ruby hash.
-
#to_hash ⇒ Hash
The complete object as a Ruby hash.
-
#to_json(options = {}) ⇒ String
The complete object as a JSON string.
Constructor Details
#initialize ⇒ WebAuthnCredentialDescriptor
Returns a new instance of WebAuthnCredentialDescriptor.
28 29 30 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 28 def initialize clear end |
Instance Attribute Details
#credential_id ⇒ Object
Returns the value of attribute credential_id.
20 21 22 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 20 def credential_id @credential_id end |
#transport ⇒ Object
Returns the value of attribute transport.
23 24 25 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 23 def transport @transport end |
#type ⇒ Object
Returns the value of attribute type.
17 18 19 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 17 def type @type end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
26 27 28 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 26 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
32 33 34 35 36 37 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 32 def clear @type = '' @credential_id = [] @transport = [] @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 47 def from_hash(obj) raise TypeError, "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash obj.each do |k, v| case k when 'type' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @type = v when 'id' @credential_id = Base64.decode64(v) when 'transports' if v.nil? @transport = [] else @transport = Array.new(v.length) v.each_with_index do |v1, i1| raise TypeError, "'v1' expected String, got #{v1.class}" unless v1.is_a? String @transport[i1] = v1 end end else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
40 41 42 43 44 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 40 def from_json(json_string) raise TypeError, "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String from_hash(JSON.parse(json_string)) end |
#to_h ⇒ Hash
Returns The complete object as a Ruby hash.
90 91 92 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 90 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 76 def to_hash ret = {} ret['type'] = @type ret['id'] = Base64.strict_encode64(@credential_id) unless @transport.nil? ret['transports'] = @transport end @unknown_json_fields.each do |k, v| ret[k] = v end ret end |
#to_json(options = {}) ⇒ String
Returns The complete object as a JSON string.
95 96 97 |
# File 'lib/comet/models/web_authn_credential_descriptor.rb', line 95 def to_json( = {}) to_hash.to_json() end |