Class: Comet::WebAuthnCredential
- Inherits:
-
Object
- Object
- Comet::WebAuthnCredential
- Defined in:
- lib/comet/models/web_authn_credential.rb
Overview
WebAuthnCredential is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#aaguid ⇒ Object
Returns the value of attribute aaguid.
-
#attestation_type ⇒ Object
Returns the value of attribute attestation_type.
-
#clone_warning ⇒ Object
Returns the value of attribute clone_warning.
-
#public_key ⇒ Object
Returns the value of attribute public_key.
-
#sign_count ⇒ Object
Returns the value of attribute sign_count.
-
#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 ⇒ WebAuthnCredential
constructor
A new instance of WebAuthnCredential.
-
#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 ⇒ WebAuthnCredential
Returns a new instance of WebAuthnCredential.
34 35 36 |
# File 'lib/comet/models/web_authn_credential.rb', line 34 def initialize clear end |
Instance Attribute Details
#aaguid ⇒ Object
Returns the value of attribute aaguid.
23 24 25 |
# File 'lib/comet/models/web_authn_credential.rb', line 23 def aaguid @aaguid end |
#attestation_type ⇒ Object
Returns the value of attribute attestation_type.
20 21 22 |
# File 'lib/comet/models/web_authn_credential.rb', line 20 def attestation_type @attestation_type end |
#clone_warning ⇒ Object
Returns the value of attribute clone_warning.
29 30 31 |
# File 'lib/comet/models/web_authn_credential.rb', line 29 def clone_warning @clone_warning end |
#public_key ⇒ Object
Returns the value of attribute public_key.
17 18 19 |
# File 'lib/comet/models/web_authn_credential.rb', line 17 def public_key @public_key end |
#sign_count ⇒ Object
Returns the value of attribute sign_count.
26 27 28 |
# File 'lib/comet/models/web_authn_credential.rb', line 26 def sign_count @sign_count end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
32 33 34 |
# File 'lib/comet/models/web_authn_credential.rb', line 32 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
38 39 40 41 42 43 44 |
# File 'lib/comet/models/web_authn_credential.rb', line 38 def clear @public_key = [] @attestation_type = '' @aaguid = [] @sign_count = 0 @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/comet/models/web_authn_credential.rb', line 54 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 'PublicKey' @public_key = Base64.decode64(v) when 'AttestationType' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @attestation_type = v when 'AAGUID' @aaguid = Base64.decode64(v) when 'SignCount' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @sign_count = v when 'CloneWarning' @clone_warning = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
47 48 49 50 51 |
# File 'lib/comet/models/web_authn_credential.rb', line 47 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.
94 95 96 |
# File 'lib/comet/models/web_authn_credential.rb', line 94 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/comet/models/web_authn_credential.rb', line 80 def to_hash ret = {} ret['PublicKey'] = Base64.strict_encode64(@public_key) ret['AttestationType'] = @attestation_type ret['AAGUID'] = Base64.strict_encode64(@aaguid) ret['SignCount'] = @sign_count ret['CloneWarning'] = @clone_warning @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.
99 100 101 |
# File 'lib/comet/models/web_authn_credential.rb', line 99 def to_json( = {}) to_hash.to_json() end |