authlete 0.3.6 → 0.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/authlete.rb +14 -14
- data/lib/authlete/api.rb +115 -35
- data/lib/authlete/authentication-server.rb +4 -4
- data/lib/authlete/model/client-list.rb +127 -181
- data/lib/authlete/model/client.rb +444 -492
- data/lib/authlete/model/hashable.rb +65 -0
- data/lib/authlete/model/request/authentication-callback-request.rb +91 -0
- data/lib/authlete/model/request/authorization-fail-request.rb +107 -0
- data/lib/authlete/model/request/authorization-issue-request.rb +136 -0
- data/lib/authlete/model/request/authorization-request.rb +104 -0
- data/lib/authlete/model/request/developer-authentication-callback-request.rb +85 -0
- data/lib/authlete/model/request/introspection-request.rb +40 -0
- data/lib/authlete/model/request/token-fail-request.rb +104 -0
- data/lib/authlete/model/request/token-issue-request.rb +104 -0
- data/lib/authlete/model/request/token-request.rb +124 -0
- data/lib/authlete/model/response/authentication-callback-response.rb +54 -0
- data/lib/authlete/model/response/authorization-fail-response.rb +47 -0
- data/lib/authlete/model/response/authorization-issue-response.rb +47 -0
- data/lib/authlete/model/response/authorization-response.rb +146 -0
- data/lib/authlete/model/response/developer-authentication-callback-response.rb +56 -0
- data/lib/authlete/model/response/introspection-response.rb +129 -0
- data/lib/authlete/model/response/result.rb +45 -0
- data/lib/authlete/model/response/service-creatable-response.rb +51 -0
- data/lib/authlete/model/response/token-fail-response.rb +48 -0
- data/lib/authlete/model/response/token-issue-response.rb +48 -0
- data/lib/authlete/model/response/token-response.rb +69 -0
- data/lib/authlete/model/scope.rb +17 -42
- data/lib/authlete/model/service-list.rb +19 -74
- data/lib/authlete/model/service-owner.rb +16 -40
- data/lib/authlete/model/service.rb +20 -76
- data/lib/authlete/model/sns-credentials.rb +16 -41
- data/lib/authlete/model/tagged-value.rb +105 -135
- data/lib/authlete/utility.rb +29 -5
- data/lib/authlete/version.rb +1 -1
- metadata +24 -10
- data/lib/authlete/request/authentication-callback-request.rb +0 -90
- data/lib/authlete/request/developer-authentication-callback-request.rb +0 -84
- data/lib/authlete/response/authentication-callback-response.rb +0 -58
- data/lib/authlete/response/base-response.rb +0 -41
- data/lib/authlete/response/developer-authentication-callback-response.rb +0 -60
- data/lib/authlete/response/introspection-response.rb +0 -130
- data/lib/authlete/response/service-creatable-response.rb +0 -52
@@ -20,7 +20,7 @@ require 'set'
|
|
20
20
|
|
21
21
|
module Authlete
|
22
22
|
module Model
|
23
|
-
class ServiceOwner
|
23
|
+
class ServiceOwner < Authlete::Model::Hashable
|
24
24
|
# The API key of the service owner. (Long)
|
25
25
|
attr_accessor :apiKey
|
26
26
|
alias_method :api_key, :apiKey
|
@@ -55,6 +55,7 @@ module Authlete
|
|
55
55
|
:apiKey, :number
|
56
56
|
])
|
57
57
|
|
58
|
+
|
58
59
|
# String attributes.
|
59
60
|
STRING_ATTRIBUTES = ::Set.new([
|
60
61
|
:apiSecret, :email, :loginId, :name, :plan
|
@@ -80,10 +81,10 @@ module Authlete
|
|
80
81
|
end
|
81
82
|
|
82
83
|
# Set attribute values using the given hash.
|
83
|
-
|
84
|
+
authlete_model_update(hash)
|
84
85
|
end
|
85
86
|
|
86
|
-
def
|
87
|
+
def authlete_model_convert_key(key)
|
87
88
|
key = key.to_sym
|
88
89
|
|
89
90
|
# Convert snakecase to camelcase, if necessary.
|
@@ -94,27 +95,23 @@ module Authlete
|
|
94
95
|
return key
|
95
96
|
end
|
96
97
|
|
97
|
-
def
|
98
|
+
def authlete_model_simple_attribute?(key)
|
98
99
|
INTEGER_ATTRIBUTES.include?(key) or
|
99
100
|
STRING_ATTRIBUTES.include?(key)
|
100
101
|
end
|
101
102
|
|
102
|
-
def
|
103
|
-
if hash.nil?
|
104
|
-
return
|
105
|
-
end
|
103
|
+
def authlete_model_update(hash)
|
104
|
+
return if hash.nil?
|
106
105
|
|
107
106
|
hash.each do |key, value|
|
108
|
-
key =
|
107
|
+
key = authlete_model_convert_key(key)
|
109
108
|
|
110
|
-
|
111
|
-
if authlete_model_service_simple_attribute?(key)
|
109
|
+
if authlete_model_simple_attribute?(key)
|
112
110
|
send("#{key}=", value)
|
113
|
-
next
|
114
111
|
end
|
115
112
|
end
|
116
113
|
|
117
|
-
|
114
|
+
self
|
118
115
|
end
|
119
116
|
|
120
117
|
public
|
@@ -122,18 +119,18 @@ module Authlete
|
|
122
119
|
# Construct an instance from the given hash.
|
123
120
|
#
|
124
121
|
# If the given argument is nil or is not a Hash, nil is returned.
|
125
|
-
# Otherwise,
|
122
|
+
# Otherwise, ServiceOwner.new(hash) is returned.
|
126
123
|
def self.parse(hash)
|
127
124
|
if hash.nil? or (hash.kind_of?(Hash) == false)
|
128
125
|
return nil
|
129
126
|
end
|
130
127
|
|
131
|
-
|
128
|
+
ServiceOwner.new(hash)
|
132
129
|
end
|
133
130
|
|
134
131
|
# Set attribute values using the given hash.
|
135
132
|
def update(hash)
|
136
|
-
|
133
|
+
authlete_model_update(hash)
|
137
134
|
end
|
138
135
|
|
139
136
|
# Convert this object into a hash.
|
@@ -144,34 +141,13 @@ module Authlete
|
|
144
141
|
key = var.to_s.delete("@").to_sym
|
145
142
|
val = instance_variable_get(var)
|
146
143
|
|
147
|
-
if
|
144
|
+
if authlete_model_simple_attribute?(key) or val.nil?
|
148
145
|
hash[key] = val
|
149
146
|
end
|
150
147
|
end
|
151
148
|
|
152
|
-
|
153
|
-
end
|
154
|
-
|
155
|
-
def [](key)
|
156
|
-
key = authlete_model_service_to_key(key)
|
157
|
-
|
158
|
-
if respond_to?(key)
|
159
|
-
return send(key)
|
160
|
-
else
|
161
|
-
return nil
|
162
|
-
end
|
163
|
-
end
|
164
|
-
|
165
|
-
def []=(key, value)
|
166
|
-
key = authlete_model_service_to_key(key)
|
167
|
-
method = "#{key}="
|
168
|
-
|
169
|
-
if respond_to?(method)
|
170
|
-
return send(method, value)
|
171
|
-
else
|
172
|
-
return nil
|
173
|
-
end
|
149
|
+
hash
|
174
150
|
end
|
175
151
|
end
|
176
152
|
end
|
177
|
-
end
|
153
|
+
end
|
@@ -20,7 +20,8 @@ require 'set'
|
|
20
20
|
|
21
21
|
module Authlete
|
22
22
|
module Model
|
23
|
-
class Service
|
23
|
+
class Service < Authlete::Model::Hashable
|
24
|
+
include Authlete::Utility
|
24
25
|
# The duration of access tokens in seconds. (Integer)
|
25
26
|
attr_accessor :accessTokenDuration
|
26
27
|
alias_method :access_token_duration, :accessTokenDuration
|
@@ -395,10 +396,10 @@ module Authlete
|
|
395
396
|
@supportedScopes = nil
|
396
397
|
|
397
398
|
# Set attribute values using the given hash.
|
398
|
-
|
399
|
+
authlete_model_update(hash)
|
399
400
|
end
|
400
401
|
|
401
|
-
def
|
402
|
+
def authlete_model_convert_key(key)
|
402
403
|
key = key.to_sym
|
403
404
|
|
404
405
|
# Convert snakecase to camelcase, if necessary.
|
@@ -406,71 +407,40 @@ module Authlete
|
|
406
407
|
key = SNAKE_TO_CAMEL[key]
|
407
408
|
end
|
408
409
|
|
409
|
-
|
410
|
+
key
|
410
411
|
end
|
411
412
|
|
412
|
-
def
|
413
|
+
def authlete_model_simple_attribute?(key)
|
413
414
|
INTEGER_ATTRIBUTES.include?(key) or
|
414
415
|
BOOLEAN_ATTRIBUTES.include?(key) or
|
415
416
|
STRING_ATTRIBUTES.include?(key) or
|
416
417
|
STRING_ARRAY_ATTRIBUTES.include?(key)
|
417
418
|
end
|
418
419
|
|
419
|
-
def
|
420
|
-
if hash.nil?
|
421
|
-
return
|
422
|
-
end
|
420
|
+
def authlete_model_update(hash)
|
421
|
+
return if hash.nil?
|
423
422
|
|
424
423
|
hash.each do |key, value|
|
425
|
-
key =
|
424
|
+
key = authlete_model_convert_key(key)
|
426
425
|
|
427
|
-
|
428
|
-
if authlete_model_service_simple_attribute?(key)
|
426
|
+
if authlete_model_simple_attribute?(key)
|
429
427
|
send("#{key}=", value)
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
if key == :developerSnsCredentials
|
434
|
-
# The attribute 'developerSnsCredentials'.
|
435
|
-
@developerSnsCredentials = authlete_model_service_parse_array(value) do |element|
|
428
|
+
elsif key == :developerSnsCredentials
|
429
|
+
@developerSnsCredentials = get_parsed_array(value) do |element|
|
436
430
|
Authlete::Model::SnsCredentials.parse(element)
|
437
431
|
end
|
438
432
|
elsif key == :snsCredentials
|
439
|
-
|
440
|
-
@snsCredentials = authlete_model_service_parse_array(value) do |element|
|
433
|
+
@snsCredentials = get_parsed_array(value) do |element|
|
441
434
|
Authlete::Model::SnsCredentials.parse(element)
|
442
435
|
end
|
443
436
|
elsif key == :supportedScopes
|
444
|
-
|
445
|
-
@supportedScopes = authlete_model_service_parse_array(value) do |element|
|
437
|
+
@supportedScopes = get_parsed_array(value) do |element|
|
446
438
|
Authlete::Model::Scope.parse(element)
|
447
439
|
end
|
448
440
|
end
|
449
441
|
end
|
450
442
|
|
451
|
-
|
452
|
-
end
|
453
|
-
|
454
|
-
def authlete_model_service_parse_array(array)
|
455
|
-
if array.nil? or (array.kind_of?(Array) == false) or (array.length == 0)
|
456
|
-
return nil
|
457
|
-
end
|
458
|
-
|
459
|
-
elements = []
|
460
|
-
|
461
|
-
array.each do |element|
|
462
|
-
parsed_element = yield(element)
|
463
|
-
|
464
|
-
if parsed_element.nil? == false
|
465
|
-
elements.push(parsed_element)
|
466
|
-
end
|
467
|
-
end
|
468
|
-
|
469
|
-
if elements.length == 0
|
470
|
-
return nil
|
471
|
-
end
|
472
|
-
|
473
|
-
return elements
|
443
|
+
self
|
474
444
|
end
|
475
445
|
|
476
446
|
public
|
@@ -484,12 +454,7 @@ module Authlete
|
|
484
454
|
return nil
|
485
455
|
end
|
486
456
|
|
487
|
-
|
488
|
-
end
|
489
|
-
|
490
|
-
# Set attribute values using the given hash.
|
491
|
-
def update(hash)
|
492
|
-
authlete_model_service_update(hash)
|
457
|
+
Service.new(hash)
|
493
458
|
end
|
494
459
|
|
495
460
|
# Convert this object into a hash.
|
@@ -500,36 +465,15 @@ module Authlete
|
|
500
465
|
key = var.to_s.delete("@").to_sym
|
501
466
|
val = instance_variable_get(var)
|
502
467
|
|
503
|
-
if
|
468
|
+
if authlete_model_simple_attribute?(key) or val.nil?
|
504
469
|
hash[key] = val
|
505
470
|
elsif val.kind_of?(Array)
|
506
|
-
hash[key] = val.map {|element| element.to_hash}
|
471
|
+
hash[key] = val.map { |element| element.to_hash }
|
507
472
|
end
|
508
473
|
end
|
509
474
|
|
510
|
-
|
511
|
-
end
|
512
|
-
|
513
|
-
def [](key)
|
514
|
-
key = authlete_model_service_to_key(key)
|
515
|
-
|
516
|
-
if respond_to?(key)
|
517
|
-
return send(key)
|
518
|
-
else
|
519
|
-
return nil
|
520
|
-
end
|
521
|
-
end
|
522
|
-
|
523
|
-
def []=(key, value)
|
524
|
-
key = authlete_model_service_to_key(key)
|
525
|
-
method = "#{key}="
|
526
|
-
|
527
|
-
if respond_to?(method)
|
528
|
-
return send(method, value)
|
529
|
-
else
|
530
|
-
return nil
|
531
|
-
end
|
475
|
+
hash
|
532
476
|
end
|
533
477
|
end
|
534
478
|
end
|
535
|
-
end
|
479
|
+
end
|
@@ -20,7 +20,7 @@ require 'set'
|
|
20
20
|
|
21
21
|
module Authlete
|
22
22
|
module Model
|
23
|
-
class SnsCredentials
|
23
|
+
class SnsCredentials < Authlete::Model::Hashable
|
24
24
|
# The API key. (String)
|
25
25
|
attr_accessor :apiKey
|
26
26
|
alias_method :api_key, :apiKey
|
@@ -33,13 +33,13 @@ module Authlete
|
|
33
33
|
|
34
34
|
# The SNS. (String)
|
35
35
|
#
|
36
|
-
#
|
36
|
+
# Currently, the only valid value is "FACEBOOK".
|
37
37
|
attr_accessor :sns
|
38
38
|
|
39
39
|
private
|
40
40
|
|
41
41
|
# String attributes.
|
42
|
-
STRING_ATTRIBUTES = ::Set.new([:apiKey, :apiSecret, :sns])
|
42
|
+
STRING_ATTRIBUTES = ::Set.new([ :apiKey, :apiSecret, :sns ])
|
43
43
|
|
44
44
|
# Mapping from snake cases to camel cases.
|
45
45
|
SNAKE_TO_CAMEL = {
|
@@ -55,10 +55,10 @@ module Authlete
|
|
55
55
|
end
|
56
56
|
|
57
57
|
# Set attribute values using the given hash.
|
58
|
-
|
58
|
+
authlete_model_update(hash)
|
59
59
|
end
|
60
60
|
|
61
|
-
def
|
61
|
+
def authlete_model_convert_key(key)
|
62
62
|
key = key.to_sym
|
63
63
|
|
64
64
|
# Convert snakecase to camelcase, if necessary.
|
@@ -66,29 +66,25 @@ module Authlete
|
|
66
66
|
key = SNAKE_TO_CAMEL[key]
|
67
67
|
end
|
68
68
|
|
69
|
-
|
69
|
+
key
|
70
70
|
end
|
71
71
|
|
72
|
-
def
|
72
|
+
def authlete_model_simple_attribute?(key)
|
73
73
|
STRING_ATTRIBUTES.include?(key)
|
74
74
|
end
|
75
75
|
|
76
|
-
def
|
77
|
-
if hash.nil?
|
78
|
-
return
|
79
|
-
end
|
76
|
+
def authlete_model_update(hash)
|
77
|
+
return if hash.nil?
|
80
78
|
|
81
79
|
hash.each do |key, value|
|
82
|
-
key =
|
80
|
+
key = authlete_model_convert_key(key)
|
83
81
|
|
84
|
-
|
85
|
-
if authlete_model_snsCredentials_simple_attribute?(key)
|
82
|
+
if authlete_model_simple_attribute?(key)
|
86
83
|
send("#{key}=", value)
|
87
|
-
next
|
88
84
|
end
|
89
85
|
end
|
90
86
|
|
91
|
-
|
87
|
+
self
|
92
88
|
end
|
93
89
|
|
94
90
|
public
|
@@ -102,12 +98,12 @@ module Authlete
|
|
102
98
|
return nil
|
103
99
|
end
|
104
100
|
|
105
|
-
|
101
|
+
Authlete::Model::SnsCredentials.new(hash)
|
106
102
|
end
|
107
103
|
|
108
104
|
# Set attribute values using the given hash.
|
109
105
|
def update(hash)
|
110
|
-
|
106
|
+
authlete_model_update(hash)
|
111
107
|
end
|
112
108
|
|
113
109
|
# Convert this object into a hash.
|
@@ -121,29 +117,8 @@ module Authlete
|
|
121
117
|
hash[key] = val
|
122
118
|
end
|
123
119
|
|
124
|
-
|
125
|
-
end
|
126
|
-
|
127
|
-
def [](key)
|
128
|
-
key = authlete_model_snsCredentials_to_key(key)
|
129
|
-
|
130
|
-
if respond_to?(key)
|
131
|
-
return send(key)
|
132
|
-
else
|
133
|
-
return nil
|
134
|
-
end
|
135
|
-
end
|
136
|
-
|
137
|
-
def []=(key, value)
|
138
|
-
key = authlete_model_snsCredentials_to_key(key)
|
139
|
-
method = "#{key}="
|
140
|
-
|
141
|
-
if respond_to?(method)
|
142
|
-
return send(method, value)
|
143
|
-
else
|
144
|
-
return nil
|
145
|
-
end
|
120
|
+
hash
|
146
121
|
end
|
147
122
|
end
|
148
123
|
end
|
149
|
-
end
|
124
|
+
end
|
@@ -1,135 +1,105 @@
|
|
1
|
-
# :nodoc:
|
2
|
-
#
|
3
|
-
# Copyright (C) 2014-2015 Authlete, Inc.
|
4
|
-
#
|
5
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
-
# you may not use this file except in compliance with the License.
|
7
|
-
# You may obtain a copy of the License at
|
8
|
-
#
|
9
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
-
#
|
11
|
-
# Unless required by applicable law or agreed to in writing, software
|
12
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
-
# See the License for the specific language governing permissions and
|
15
|
-
# limitations under the License.
|
16
|
-
|
17
|
-
|
18
|
-
require 'set'
|
19
|
-
|
20
|
-
|
21
|
-
module Authlete
|
22
|
-
module Model
|
23
|
-
class TaggedValue
|
24
|
-
# The language tag part. (String)
|
25
|
-
attr_accessor :tag
|
26
|
-
|
27
|
-
# The value part. (String)
|
28
|
-
attr_accessor :value
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
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
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
hash
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
hash[key] = val
|
108
|
-
end
|
109
|
-
|
110
|
-
return hash
|
111
|
-
end
|
112
|
-
|
113
|
-
def [](key)
|
114
|
-
key = authlete_model_taggedValue_to_key(key)
|
115
|
-
|
116
|
-
if respond_to?(key)
|
117
|
-
return send(key)
|
118
|
-
else
|
119
|
-
return nil
|
120
|
-
end
|
121
|
-
end
|
122
|
-
|
123
|
-
def []=(key, value)
|
124
|
-
key = authlete_model_taggedValue_to_key(key)
|
125
|
-
method = "#{key}="
|
126
|
-
|
127
|
-
if respond_to?(method)
|
128
|
-
return send(method, value)
|
129
|
-
else
|
130
|
-
return nil
|
131
|
-
end
|
132
|
-
end
|
133
|
-
end
|
134
|
-
end
|
135
|
-
end
|
1
|
+
# :nodoc:
|
2
|
+
#
|
3
|
+
# Copyright (C) 2014-2015 Authlete, Inc.
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
|
18
|
+
require 'set'
|
19
|
+
|
20
|
+
|
21
|
+
module Authlete
|
22
|
+
module Model
|
23
|
+
class TaggedValue < Authlete::Model::Hashable
|
24
|
+
# The language tag part. (String)
|
25
|
+
attr_accessor :tag
|
26
|
+
|
27
|
+
# The value part. (String)
|
28
|
+
attr_accessor :value
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
# String attributes.
|
33
|
+
STRING_ATTRIBUTES = ::Set.new([:tag, :value])
|
34
|
+
|
35
|
+
# The constructor
|
36
|
+
def initialize(hash = new)
|
37
|
+
# Set default values to string attributes.
|
38
|
+
STRING_ATTRIBUTES.each do |attr|
|
39
|
+
send("#{attr}=", nil)
|
40
|
+
end
|
41
|
+
|
42
|
+
# Set attribute values using the given hash.
|
43
|
+
authlete_model_update(hash)
|
44
|
+
end
|
45
|
+
|
46
|
+
def authlete_model_convert_key(key)
|
47
|
+
key = key.to_sym
|
48
|
+
|
49
|
+
# Convert snakecase to camelcase, if necessary.
|
50
|
+
if SNAKE_TO_CAMEL.has_key?(key)
|
51
|
+
key = SNAKE_TO_CAMEL[key]
|
52
|
+
end
|
53
|
+
|
54
|
+
key
|
55
|
+
end
|
56
|
+
|
57
|
+
def authlete_model_simple_attribute?(key)
|
58
|
+
STRING_ATTRIBUTES.include?(key)
|
59
|
+
end
|
60
|
+
|
61
|
+
def authlete_model_update(hash)
|
62
|
+
return if hash.nil?
|
63
|
+
|
64
|
+
hash.each do |key, value|
|
65
|
+
key = authlete_model_convert_key(key)
|
66
|
+
|
67
|
+
# If the attribute is a simple one.
|
68
|
+
if authlete_model_simple_attribute?(key)
|
69
|
+
send("#{key}=", value)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
self
|
74
|
+
end
|
75
|
+
|
76
|
+
public
|
77
|
+
|
78
|
+
# Construct an instance from the given hash.
|
79
|
+
#
|
80
|
+
# If the given argument is nil or is not a Hash, nil is returned.
|
81
|
+
# Otherwise, TaggedValue.new(hash) is returned.
|
82
|
+
def self.parse(hash)
|
83
|
+
if hash.nil? or (hash.kind_of?(Hash) == false)
|
84
|
+
return nil
|
85
|
+
end
|
86
|
+
|
87
|
+
Authlete::Model::TaggedValue.new(hash)
|
88
|
+
end
|
89
|
+
|
90
|
+
# Convert this object into a hash.
|
91
|
+
def to_hash
|
92
|
+
hash = {}
|
93
|
+
|
94
|
+
instance_variables.each do |var|
|
95
|
+
key = var.to_s.delete("@").to_sym
|
96
|
+
val = instance_variable_get(var)
|
97
|
+
|
98
|
+
hash[key] = val
|
99
|
+
end
|
100
|
+
|
101
|
+
hash
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|