authlete_ruby_test 0.0.1.beta → 0.0.2.pre.beta.1

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.
@@ -82,7 +82,7 @@ module Authlete
82
82
  hook_ctx = SDKHooks::HookContext.new(
83
83
  config: @sdk_configuration,
84
84
  base_url: base_url,
85
- oauth2_scopes: [],
85
+ oauth2_scopes: nil,
86
86
  operation_id: 'vci_metadata_api',
87
87
  security_source: @sdk_configuration.security_source
88
88
  )
@@ -164,7 +164,7 @@ module Authlete
164
164
  response_data = http_response.env.response_body
165
165
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
166
166
  obj.raw_response = http_response
167
- throw obj
167
+ raise obj
168
168
  else
169
169
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
170
170
  end
@@ -179,7 +179,7 @@ module Authlete
179
179
  response_data = http_response.env.response_body
180
180
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
181
181
  obj.raw_response = http_response
182
- throw obj
182
+ raise obj
183
183
  else
184
184
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
185
185
  end
@@ -237,7 +237,7 @@ module Authlete
237
237
  hook_ctx = SDKHooks::HookContext.new(
238
238
  config: @sdk_configuration,
239
239
  base_url: base_url,
240
- oauth2_scopes: [],
240
+ oauth2_scopes: nil,
241
241
  operation_id: 'vci_jwtissuer_api',
242
242
  security_source: @sdk_configuration.security_source
243
243
  )
@@ -319,7 +319,7 @@ module Authlete
319
319
  response_data = http_response.env.response_body
320
320
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
321
321
  obj.raw_response = http_response
322
- throw obj
322
+ raise obj
323
323
  else
324
324
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
325
325
  end
@@ -334,7 +334,7 @@ module Authlete
334
334
  response_data = http_response.env.response_body
335
335
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
336
336
  obj.raw_response = http_response
337
- throw obj
337
+ raise obj
338
338
  else
339
339
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
340
340
  end
@@ -392,7 +392,7 @@ module Authlete
392
392
  hook_ctx = SDKHooks::HookContext.new(
393
393
  config: @sdk_configuration,
394
394
  base_url: base_url,
395
- oauth2_scopes: [],
395
+ oauth2_scopes: nil,
396
396
  operation_id: 'vci_jwks_api',
397
397
  security_source: @sdk_configuration.security_source
398
398
  )
@@ -474,7 +474,7 @@ module Authlete
474
474
  response_data = http_response.env.response_body
475
475
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
476
476
  obj.raw_response = http_response
477
- throw obj
477
+ raise obj
478
478
  else
479
479
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
480
480
  end
@@ -489,7 +489,7 @@ module Authlete
489
489
  response_data = http_response.env.response_body
490
490
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
491
491
  obj.raw_response = http_response
492
- throw obj
492
+ raise obj
493
493
  else
494
494
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
495
495
  end
@@ -547,7 +547,7 @@ module Authlete
547
547
  hook_ctx = SDKHooks::HookContext.new(
548
548
  config: @sdk_configuration,
549
549
  base_url: base_url,
550
- oauth2_scopes: [],
550
+ oauth2_scopes: nil,
551
551
  operation_id: 'vci_offer_create_api',
552
552
  security_source: @sdk_configuration.security_source
553
553
  )
@@ -629,7 +629,7 @@ module Authlete
629
629
  response_data = http_response.env.response_body
630
630
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
631
631
  obj.raw_response = http_response
632
- throw obj
632
+ raise obj
633
633
  else
634
634
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
635
635
  end
@@ -644,7 +644,7 @@ module Authlete
644
644
  response_data = http_response.env.response_body
645
645
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
646
646
  obj.raw_response = http_response
647
- throw obj
647
+ raise obj
648
648
  else
649
649
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
650
650
  end
@@ -702,7 +702,7 @@ module Authlete
702
702
  hook_ctx = SDKHooks::HookContext.new(
703
703
  config: @sdk_configuration,
704
704
  base_url: base_url,
705
- oauth2_scopes: [],
705
+ oauth2_scopes: nil,
706
706
  operation_id: 'vci_offer_info_api',
707
707
  security_source: @sdk_configuration.security_source
708
708
  )
@@ -784,7 +784,7 @@ module Authlete
784
784
  response_data = http_response.env.response_body
785
785
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
786
786
  obj.raw_response = http_response
787
- throw obj
787
+ raise obj
788
788
  else
789
789
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
790
790
  end
@@ -799,7 +799,7 @@ module Authlete
799
799
  response_data = http_response.env.response_body
800
800
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
801
801
  obj.raw_response = http_response
802
- throw obj
802
+ raise obj
803
803
  else
804
804
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
805
805
  end
@@ -857,7 +857,7 @@ module Authlete
857
857
  hook_ctx = SDKHooks::HookContext.new(
858
858
  config: @sdk_configuration,
859
859
  base_url: base_url,
860
- oauth2_scopes: [],
860
+ oauth2_scopes: nil,
861
861
  operation_id: 'vci_single_parse_api',
862
862
  security_source: @sdk_configuration.security_source
863
863
  )
@@ -939,7 +939,7 @@ module Authlete
939
939
  response_data = http_response.env.response_body
940
940
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
941
941
  obj.raw_response = http_response
942
- throw obj
942
+ raise obj
943
943
  else
944
944
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
945
945
  end
@@ -954,7 +954,7 @@ module Authlete
954
954
  response_data = http_response.env.response_body
955
955
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
956
956
  obj.raw_response = http_response
957
- throw obj
957
+ raise obj
958
958
  else
959
959
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
960
960
  end
@@ -1012,7 +1012,7 @@ module Authlete
1012
1012
  hook_ctx = SDKHooks::HookContext.new(
1013
1013
  config: @sdk_configuration,
1014
1014
  base_url: base_url,
1015
- oauth2_scopes: [],
1015
+ oauth2_scopes: nil,
1016
1016
  operation_id: 'vci_single_issue_api',
1017
1017
  security_source: @sdk_configuration.security_source
1018
1018
  )
@@ -1094,7 +1094,7 @@ module Authlete
1094
1094
  response_data = http_response.env.response_body
1095
1095
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1096
1096
  obj.raw_response = http_response
1097
- throw obj
1097
+ raise obj
1098
1098
  else
1099
1099
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1100
1100
  end
@@ -1109,7 +1109,7 @@ module Authlete
1109
1109
  response_data = http_response.env.response_body
1110
1110
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1111
1111
  obj.raw_response = http_response
1112
- throw obj
1112
+ raise obj
1113
1113
  else
1114
1114
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1115
1115
  end
@@ -1167,7 +1167,7 @@ module Authlete
1167
1167
  hook_ctx = SDKHooks::HookContext.new(
1168
1168
  config: @sdk_configuration,
1169
1169
  base_url: base_url,
1170
- oauth2_scopes: [],
1170
+ oauth2_scopes: nil,
1171
1171
  operation_id: 'vci_batch_parse_api',
1172
1172
  security_source: @sdk_configuration.security_source
1173
1173
  )
@@ -1249,7 +1249,7 @@ module Authlete
1249
1249
  response_data = http_response.env.response_body
1250
1250
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1251
1251
  obj.raw_response = http_response
1252
- throw obj
1252
+ raise obj
1253
1253
  else
1254
1254
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1255
1255
  end
@@ -1264,7 +1264,7 @@ module Authlete
1264
1264
  response_data = http_response.env.response_body
1265
1265
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1266
1266
  obj.raw_response = http_response
1267
- throw obj
1267
+ raise obj
1268
1268
  else
1269
1269
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1270
1270
  end
@@ -1322,7 +1322,7 @@ module Authlete
1322
1322
  hook_ctx = SDKHooks::HookContext.new(
1323
1323
  config: @sdk_configuration,
1324
1324
  base_url: base_url,
1325
- oauth2_scopes: [],
1325
+ oauth2_scopes: nil,
1326
1326
  operation_id: 'vci_batch_issue_api',
1327
1327
  security_source: @sdk_configuration.security_source
1328
1328
  )
@@ -1404,7 +1404,7 @@ module Authlete
1404
1404
  response_data = http_response.env.response_body
1405
1405
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1406
1406
  obj.raw_response = http_response
1407
- throw obj
1407
+ raise obj
1408
1408
  else
1409
1409
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1410
1410
  end
@@ -1419,7 +1419,7 @@ module Authlete
1419
1419
  response_data = http_response.env.response_body
1420
1420
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1421
1421
  obj.raw_response = http_response
1422
- throw obj
1422
+ raise obj
1423
1423
  else
1424
1424
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1425
1425
  end
@@ -1477,7 +1477,7 @@ module Authlete
1477
1477
  hook_ctx = SDKHooks::HookContext.new(
1478
1478
  config: @sdk_configuration,
1479
1479
  base_url: base_url,
1480
- oauth2_scopes: [],
1480
+ oauth2_scopes: nil,
1481
1481
  operation_id: 'vci_deferred_parse_api',
1482
1482
  security_source: @sdk_configuration.security_source
1483
1483
  )
@@ -1559,7 +1559,7 @@ module Authlete
1559
1559
  response_data = http_response.env.response_body
1560
1560
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1561
1561
  obj.raw_response = http_response
1562
- throw obj
1562
+ raise obj
1563
1563
  else
1564
1564
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1565
1565
  end
@@ -1574,7 +1574,7 @@ module Authlete
1574
1574
  response_data = http_response.env.response_body
1575
1575
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1576
1576
  obj.raw_response = http_response
1577
- throw obj
1577
+ raise obj
1578
1578
  else
1579
1579
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1580
1580
  end
@@ -1632,7 +1632,7 @@ module Authlete
1632
1632
  hook_ctx = SDKHooks::HookContext.new(
1633
1633
  config: @sdk_configuration,
1634
1634
  base_url: base_url,
1635
- oauth2_scopes: [],
1635
+ oauth2_scopes: nil,
1636
1636
  operation_id: 'vci_deferred_issue_api',
1637
1637
  security_source: @sdk_configuration.security_source
1638
1638
  )
@@ -1714,7 +1714,7 @@ module Authlete
1714
1714
  response_data = http_response.env.response_body
1715
1715
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1716
1716
  obj.raw_response = http_response
1717
- throw obj
1717
+ raise obj
1718
1718
  else
1719
1719
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1720
1720
  end
@@ -1729,7 +1729,7 @@ module Authlete
1729
1729
  response_data = http_response.env.response_body
1730
1730
  obj = Crystalline.unmarshal_json(JSON.parse(response_data), Models::Errors::ResultError)
1731
1731
  obj.raw_response = http_response
1732
- throw obj
1732
+ raise obj
1733
1733
  else
1734
1734
  raise ::Authlete::Models::Errors::APIError.new(status_code: http_response.status, body: http_response.env.response_body, raw_response: http_response), 'Unknown content type received'
1735
1735
  end
@@ -62,20 +62,6 @@ module Crystalline
62
62
  end
63
63
  end
64
64
 
65
- def from_json(json_obj)
66
- case json_obj
67
- when String
68
- begin
69
- d = JSON.parse(json_obj)
70
- rescue JSON::ParserError
71
- d = json_obj
72
- end
73
- else
74
- d = json_obj
75
- end
76
- from_json(d)
77
- end
78
-
79
65
  def from_dict(d)
80
66
  to_build = {}
81
67
 
@@ -111,9 +97,16 @@ module Crystalline
111
97
  to_build[key] = unmarshalled_hash
112
98
  elsif Crystalline::Utils.union? field_type
113
99
  discriminator = field.metadata.fetch(:discriminator, nil)
100
+ discriminator_mapping = field.metadata.fetch(:discriminator_mapping, nil)
114
101
  if !discriminator.nil?
115
- type_to_deserialize = value.fetch(discriminator)
116
- type_to_deserialize = Crystalline::Utils.get_union_types(field_type).find { |t| t.name.split('::').last == type_to_deserialize }
102
+ discriminator_value = value.fetch(discriminator)
103
+ if !discriminator_mapping.nil?
104
+ # Use explicit mapping from discriminator value to type
105
+ type_to_deserialize = discriminator_mapping[discriminator_value]
106
+ else
107
+ # Fallback: try to match discriminator value against type name
108
+ type_to_deserialize = Crystalline::Utils.get_union_types(field_type).find { |t| t.name.split('::').last == discriminator_value }
109
+ end
117
110
  to_build[key] = Crystalline.unmarshal_json(value, type_to_deserialize)
118
111
  else
119
112
  union_types = Crystalline::Utils.get_union_types(field_type)
@@ -51,6 +51,10 @@ module Crystalline
51
51
  data.transform_values { |v| Crystalline.unmarshal_json(v, Crystalline::Utils.hash_of(type)) }
52
52
  elsif Crystalline::Utils.nilable?(type) && data == 'null'
53
53
  nil
54
+ elsif Crystalline::Utils.boolean? type
55
+ Crystalline::Utils.to_boolean(data)
56
+ elsif type.is_a?(Class) && type < T::Enum
57
+ type.deserialize(data)
54
58
  else
55
59
  data
56
60
  end
@@ -41,38 +41,43 @@ module Crystalline
41
41
  end
42
42
 
43
43
  module Enum
44
+ def self.included(base)
45
+ base.extend(ClassMethods)
46
+ end
47
+
44
48
  def initialize(val)
45
- puts methods
46
- if instance_methods(false).include?(:initialize)
49
+ if self.class.instance_methods(false).include?(:initialize)
47
50
  super(val)
48
51
  else
49
52
  @val = val
50
53
  end
51
54
  end
52
55
 
53
- def self.enums(&blk)
54
- @mapping = {}
56
+ module ClassMethods
57
+ def enums(&blk)
58
+ @mapping = {}
59
+
60
+ yield
61
+ constants(false).each do |const_name|
62
+ instance = const_get(const_name, false)
63
+ unless instance.is_a? self
64
+ raise 'Enum constants must be instances of the Enum class (e.g. `Foo = new`)'
65
+ end
66
+ @mapping[instance.serialize] = instance
67
+ end
68
+ end
55
69
 
56
- yield
57
- constants(false).each do |const_name|
58
- instance = const_get(const_name, false)
59
- unless instance.is_a? self
60
- raise 'Enum constants must be instances of the Enum class (e.g. `Foo = new`)'
70
+ def deserialize(val)
71
+ if @mapping.include? val
72
+ @mapping[val]
73
+ else
74
+ raise "Invalid value for enum: #{val}"
61
75
  end
62
- @mapping[instance.serialize] = instance
63
76
  end
64
77
  end
65
78
 
66
79
  def serialize
67
80
  @val
68
81
  end
69
-
70
- def deserialize(val)
71
- if @mapping.include? val
72
- @mapping[val]
73
- else
74
- raise "Invalid value for enum: #{val}"
75
- end
76
- end
77
82
  end
78
83
  end
@@ -52,5 +52,18 @@ module Crystalline
52
52
  def self.get_union_types(t)
53
53
  t.types
54
54
  end
55
+
56
+ def self.boolean?(t)
57
+ t.instance_of? Crystalline::Boolean
58
+ end
59
+
60
+ def self.to_boolean(value)
61
+ case value
62
+ when true, false
63
+ value
64
+ else
65
+ raise TypeError, "Cannot convert #{value.inspect} to boolean. The value is of type #{value.class}"
66
+ end
67
+ end
55
68
  end
56
69
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: authlete_ruby_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.beta
4
+ version: 0.0.2.pre.beta.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Authlete, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-12-18 00:00:00.000000000 Z
11
+ date: 2025-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64