Class: Comet::U2FSignRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/comet/models/u2fsign_request.rb

Overview

U2FSignRequest is a typed class wrapper around the underlying Comet Server API data structure.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeU2FSignRequest

Returns a new instance of U2FSignRequest.



32
33
34
# File 'lib/comet/models/u2fsign_request.rb', line 32

def initialize
  clear
end

Instance Attribute Details

#app_idObject

Returns the value of attribute app_id.



24
25
26
# File 'lib/comet/models/u2fsign_request.rb', line 24

def app_id
  @app_id
end

#challenge_dataObject

Returns the value of attribute challenge_data.



21
22
23
# File 'lib/comet/models/u2fsign_request.rb', line 21

def challenge_data
  @challenge_data
end

#challenge_idObject

Returns the value of attribute challenge_id.



18
19
20
# File 'lib/comet/models/u2fsign_request.rb', line 18

def challenge_id
  @challenge_id
end

#registered_keysObject

Returns the value of attribute registered_keys.



27
28
29
# File 'lib/comet/models/u2fsign_request.rb', line 27

def registered_keys
  @registered_keys
end

#unknown_json_fieldsObject

Returns the value of attribute unknown_json_fields.



30
31
32
# File 'lib/comet/models/u2fsign_request.rb', line 30

def unknown_json_fields
  @unknown_json_fields
end

Instance Method Details

#clearObject



36
37
38
39
40
41
42
# File 'lib/comet/models/u2fsign_request.rb', line 36

def clear
  @challenge_id = ''
  @challenge_data = ''
  @app_id = ''
  @registered_keys = []
  @unknown_json_fields = {}
end

#from_hash(obj) ⇒ Object

Parameters:

  • obj (Hash)

    The complete object as a Ruby hash



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/comet/models/u2fsign_request.rb', line 52

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 'ChallengeID'
      raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String

      @challenge_id = v
    when 'ChallengeData'
      raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String

      @challenge_data = v
    when 'AppID'
      raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String

      @app_id = v
    when 'RegisteredKeys'
      if v.nil?
        @registered_keys = []
      else
        @registered_keys = Array.new(v.length)
        v.each_with_index do |v1, i1|
          @registered_keys[i1] = Comet::U2FRegisteredKey.new
          @registered_keys[i1].from_hash(v1)
        end
      end
    else
      @unknown_json_fields[k] = v
    end
  end
end

#from_json(json_string) ⇒ Object

Parameters:

  • json_string (String)

    The complete object in JSON format



45
46
47
48
49
# File 'lib/comet/models/u2fsign_request.rb', line 45

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_hHash

Returns The complete object as a Ruby hash.

Returns:

  • (Hash)

    The complete object as a Ruby hash



99
100
101
# File 'lib/comet/models/u2fsign_request.rb', line 99

def to_h
  to_hash
end

#to_hashHash

Returns The complete object as a Ruby hash.

Returns:

  • (Hash)

    The complete object as a Ruby hash



86
87
88
89
90
91
92
93
94
95
96
# File 'lib/comet/models/u2fsign_request.rb', line 86

def to_hash
  ret = {}
  ret['ChallengeID'] = @challenge_id
  ret['ChallengeData'] = @challenge_data
  ret['AppID'] = @app_id
  ret['RegisteredKeys'] = @registered_keys
  @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.

Returns:

  • (String)

    The complete object as a JSON string



104
105
106
# File 'lib/comet/models/u2fsign_request.rb', line 104

def to_json(options = {})
  to_hash.to_json(options)
end