finnhub_ruby 1.1.2 → 1.1.4

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.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +42 -12
  3. data/docs/AggregateIndicators.md +10 -9
  4. data/docs/BasicFinancials.md +14 -11
  5. data/docs/BreakdownItem.md +20 -0
  6. data/docs/Company.md +20 -19
  7. data/docs/CompanyExecutive.md +10 -9
  8. data/docs/CompanyNewsStatistics.md +12 -11
  9. data/docs/CompanyProfile.md +62 -61
  10. data/docs/CompanyProfile2.md +30 -29
  11. data/docs/CountryMetadata.md +18 -17
  12. data/docs/CovidInfo.md +14 -13
  13. data/docs/CryptoCandles.md +20 -19
  14. data/docs/CryptoSymbol.md +12 -11
  15. data/docs/DefaultApi.md +2927 -891
  16. data/docs/Development.md +16 -13
  17. data/docs/Dividends.md +22 -21
  18. data/docs/Dividends2Basic.md +20 -0
  19. data/docs/ETFCountryExposureData.md +10 -9
  20. data/docs/ETFHoldingsData.md +20 -11
  21. data/docs/ETFProfileData.md +52 -0
  22. data/docs/ETFSectorExposureData.md +10 -9
  23. data/docs/ETFsCountryExposure.md +10 -9
  24. data/docs/ETFsHoldings.md +14 -9
  25. data/docs/ETFsProfile.md +10 -9
  26. data/docs/ETFsSectorExposure.md +20 -0
  27. data/docs/EarningEstimate.md +16 -15
  28. data/docs/EarningRelease.md +24 -23
  29. data/docs/EarningResult.md +18 -13
  30. data/docs/EarningsCalendar.md +8 -7
  31. data/docs/EarningsCallTranscripts.md +24 -23
  32. data/docs/EarningsCallTranscriptsList.md +10 -9
  33. data/docs/EarningsEstimates.md +12 -11
  34. data/docs/EconomicCalendar.md +8 -7
  35. data/docs/EconomicCode.md +14 -13
  36. data/docs/EconomicData.md +10 -9
  37. data/docs/EconomicEvent.md +22 -21
  38. data/docs/Estimate.md +16 -15
  39. data/docs/FDAComitteeMeeting.md +24 -0
  40. data/docs/Filing.md +22 -21
  41. data/docs/FilingSentiment.md +34 -0
  42. data/docs/FinancialStatements.md +10 -9
  43. data/docs/FinancialsAsReported.md +12 -11
  44. data/docs/ForexCandles.md +20 -19
  45. data/docs/ForexSymbol.md +12 -11
  46. data/docs/Forexrates.md +10 -9
  47. data/docs/FundOwnership.md +10 -9
  48. data/docs/HistoricalNBBO.md +40 -0
  49. data/docs/IPOCalendar.md +8 -7
  50. data/docs/IPOEvent.md +22 -21
  51. data/docs/IndexHistoricalConstituent.md +12 -11
  52. data/docs/Indicator.md +12 -11
  53. data/docs/IndicesConstituents.md +10 -9
  54. data/docs/IndicesHistoricalConstituents.md +10 -9
  55. data/docs/InsiderTransactions.md +20 -0
  56. data/docs/InternationalFiling.md +34 -0
  57. data/docs/InvestmentThemePortfolio.md +18 -0
  58. data/docs/InvestmentThemesThematicInvesting.md +20 -0
  59. data/docs/Investor.md +14 -13
  60. data/docs/KeyCustomersSuppliers.md +24 -0
  61. data/docs/LastBidAsk.md +16 -15
  62. data/docs/MajorPressReleases.md +20 -0
  63. data/docs/MutualFundCountryExposureData.md +20 -0
  64. data/docs/MutualFundSectorExposure.md +20 -0
  65. data/docs/MutualFundSectorExposureData.md +20 -0
  66. data/docs/MutualFundsCountryExposure.md +20 -0
  67. data/docs/MutualFundsHoldings.md +24 -0
  68. data/docs/MutualFundsProfile.md +20 -0
  69. data/docs/News.md +24 -23
  70. data/docs/NewsSentiment.md +18 -17
  71. data/docs/Ownership.md +20 -0
  72. data/docs/PatternRecognition.md +8 -7
  73. data/docs/PriceTarget.md +18 -17
  74. data/docs/Quote.md +20 -15
  75. data/docs/RecommendationTrend.md +20 -19
  76. data/docs/RedditSentimentContent.md +30 -0
  77. data/docs/Report.md +28 -27
  78. data/docs/RevenueBreakdown.md +22 -0
  79. data/docs/RevenueEstimates.md +12 -11
  80. data/docs/SECSentimentAnalysis.md +24 -0
  81. data/docs/Sentiment.md +10 -9
  82. data/docs/SimilarityIndex.md +12 -11
  83. data/docs/SocialSentiment.md +22 -0
  84. data/docs/Split.md +14 -13
  85. data/docs/Stock.md +14 -15
  86. data/docs/StockCandles.md +20 -19
  87. data/docs/StockTranscripts.md +16 -15
  88. data/docs/SupplyChainRelationships.md +20 -0
  89. data/docs/SupportResistance.md +8 -7
  90. data/docs/SymbolLookup.md +20 -0
  91. data/docs/TechnicalAnalysis.md +10 -9
  92. data/docs/TickData.md +24 -21
  93. data/docs/Transactions.md +30 -0
  94. data/docs/TranscriptContent.md +12 -9
  95. data/docs/TranscriptParticipant.md +12 -9
  96. data/docs/Trend.md +10 -9
  97. data/docs/TwitterSentimentContent.md +30 -0
  98. data/docs/UpgradeDowngrade.md +18 -17
  99. data/finnhub_ruby.gemspec +7 -8
  100. data/lib/finnhub_ruby.rb +32 -7
  101. data/lib/finnhub_ruby/api/default_api.rb +1514 -466
  102. data/lib/finnhub_ruby/api_client.rb +52 -49
  103. data/lib/finnhub_ruby/api_error.rb +1 -1
  104. data/lib/finnhub_ruby/configuration.rb +39 -10
  105. data/lib/finnhub_ruby/models/aggregate_indicators.rb +19 -7
  106. data/lib/finnhub_ruby/models/basic_financials.rb +29 -8
  107. data/lib/finnhub_ruby/models/breakdown_item.rb +228 -0
  108. data/lib/finnhub_ruby/models/company.rb +19 -7
  109. data/lib/finnhub_ruby/models/company_executive.rb +19 -7
  110. data/lib/finnhub_ruby/models/company_news_statistics.rb +19 -7
  111. data/lib/finnhub_ruby/models/company_profile.rb +19 -7
  112. data/lib/finnhub_ruby/models/company_profile2.rb +19 -7
  113. data/lib/finnhub_ruby/models/country_metadata.rb +19 -7
  114. data/lib/finnhub_ruby/models/covid_info.rb +20 -8
  115. data/lib/finnhub_ruby/models/crypto_candles.rb +19 -7
  116. data/lib/finnhub_ruby/models/crypto_symbol.rb +19 -7
  117. data/lib/finnhub_ruby/models/development.rb +34 -12
  118. data/lib/finnhub_ruby/models/dividends.rb +19 -7
  119. data/lib/finnhub_ruby/models/dividends2_basic.rb +231 -0
  120. data/lib/finnhub_ruby/models/earning_estimate.rb +20 -8
  121. data/lib/finnhub_ruby/models/earning_release.rb +20 -8
  122. data/lib/finnhub_ruby/models/earning_result.rb +40 -8
  123. data/lib/finnhub_ruby/models/earnings_calendar.rb +19 -7
  124. data/lib/finnhub_ruby/models/earnings_call_transcripts.rb +20 -8
  125. data/lib/finnhub_ruby/models/earnings_call_transcripts_list.rb +19 -7
  126. data/lib/finnhub_ruby/models/earnings_estimates.rb +19 -7
  127. data/lib/finnhub_ruby/models/economic_calendar.rb +19 -7
  128. data/lib/finnhub_ruby/models/economic_code.rb +19 -7
  129. data/lib/finnhub_ruby/models/economic_data.rb +19 -7
  130. data/lib/finnhub_ruby/models/economic_event.rb +19 -7
  131. data/lib/finnhub_ruby/models/estimate.rb +20 -8
  132. data/lib/finnhub_ruby/models/etf_country_exposure_data.rb +20 -8
  133. data/lib/finnhub_ruby/models/etf_holdings_data.rb +63 -11
  134. data/lib/finnhub_ruby/models/etf_profile_data.rb +389 -0
  135. data/lib/finnhub_ruby/models/etf_sector_exposure_data.rb +20 -8
  136. data/lib/finnhub_ruby/models/etfs_country_exposure.rb +231 -0
  137. data/lib/finnhub_ruby/models/etfs_holdings.rb +251 -0
  138. data/lib/finnhub_ruby/models/etfs_profile.rb +228 -0
  139. data/lib/finnhub_ruby/models/etfs_sector_exposure.rb +231 -0
  140. data/lib/finnhub_ruby/models/fda_comittee_meeting.rb +249 -0
  141. data/lib/finnhub_ruby/models/filing.rb +21 -9
  142. data/lib/finnhub_ruby/models/filing_sentiment.rb +299 -0
  143. data/lib/finnhub_ruby/models/financial_statements.rb +19 -7
  144. data/lib/finnhub_ruby/models/financials_as_reported.rb +19 -7
  145. data/lib/finnhub_ruby/models/forex_candles.rb +19 -7
  146. data/lib/finnhub_ruby/models/forex_symbol.rb +19 -7
  147. data/lib/finnhub_ruby/models/forexrates.rb +19 -7
  148. data/lib/finnhub_ruby/models/fund_ownership.rb +19 -7
  149. data/lib/finnhub_ruby/models/historical_nbbo.rb +345 -0
  150. data/lib/finnhub_ruby/models/index_historical_constituent.rb +19 -7
  151. data/lib/finnhub_ruby/models/indicator.rb +19 -7
  152. data/lib/finnhub_ruby/models/indices_constituents.rb +19 -7
  153. data/lib/finnhub_ruby/models/indices_historical_constituents.rb +19 -7
  154. data/lib/finnhub_ruby/models/insider_transactions.rb +231 -0
  155. data/lib/finnhub_ruby/models/international_filing.rb +299 -0
  156. data/lib/finnhub_ruby/models/investment_theme_portfolio.rb +219 -0
  157. data/lib/finnhub_ruby/models/investment_themes_thematic_investing.rb +231 -0
  158. data/lib/finnhub_ruby/models/investor.rb +19 -7
  159. data/lib/finnhub_ruby/models/ipo_calendar.rb +19 -7
  160. data/lib/finnhub_ruby/models/ipo_event.rb +19 -7
  161. data/lib/finnhub_ruby/models/key_customers_suppliers.rb +249 -0
  162. data/lib/finnhub_ruby/models/last_bid_ask.rb +19 -7
  163. data/lib/finnhub_ruby/models/major_press_releases.rb +231 -0
  164. data/lib/finnhub_ruby/models/mutual_fund_country_exposure_data.rb +229 -0
  165. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure.rb +231 -0
  166. data/lib/finnhub_ruby/models/mutual_fund_sector_exposure_data.rb +229 -0
  167. data/lib/finnhub_ruby/models/mutual_funds_country_exposure.rb +231 -0
  168. data/lib/finnhub_ruby/models/mutual_funds_holdings.rb +251 -0
  169. data/lib/finnhub_ruby/models/mutual_funds_profile.rb +228 -0
  170. data/lib/finnhub_ruby/models/news.rb +19 -7
  171. data/lib/finnhub_ruby/models/news_sentiment.rb +19 -7
  172. data/lib/finnhub_ruby/models/ownership.rb +231 -0
  173. data/lib/finnhub_ruby/models/pattern_recognition.rb +19 -7
  174. data/lib/finnhub_ruby/models/price_target.rb +20 -8
  175. data/lib/finnhub_ruby/models/quote.rb +43 -11
  176. data/lib/finnhub_ruby/models/recommendation_trend.rb +19 -7
  177. data/lib/finnhub_ruby/models/reddit_sentiment_content.rb +279 -0
  178. data/lib/finnhub_ruby/models/report.rb +23 -11
  179. data/lib/finnhub_ruby/models/revenue_breakdown.rb +241 -0
  180. data/lib/finnhub_ruby/models/revenue_estimates.rb +19 -7
  181. data/lib/finnhub_ruby/models/sec_sentiment_analysis.rb +248 -0
  182. data/lib/finnhub_ruby/models/sentiment.rb +19 -7
  183. data/lib/finnhub_ruby/models/similarity_index.rb +19 -7
  184. data/lib/finnhub_ruby/models/social_sentiment.rb +243 -0
  185. data/lib/finnhub_ruby/models/split.rb +19 -7
  186. data/lib/finnhub_ruby/models/stock.rb +23 -21
  187. data/lib/finnhub_ruby/models/stock_candles.rb +19 -7
  188. data/lib/finnhub_ruby/models/stock_transcripts.rb +20 -8
  189. data/lib/finnhub_ruby/models/supply_chain_relationships.rb +231 -0
  190. data/lib/finnhub_ruby/models/support_resistance.rb +19 -7
  191. data/lib/finnhub_ruby/models/symbol_lookup.rb +231 -0
  192. data/lib/finnhub_ruby/models/technical_analysis.rb +19 -7
  193. data/lib/finnhub_ruby/models/tick_data.rb +36 -12
  194. data/lib/finnhub_ruby/models/transactions.rb +279 -0
  195. data/lib/finnhub_ruby/models/transcript_content.rb +33 -11
  196. data/lib/finnhub_ruby/models/transcript_participant.rb +33 -11
  197. data/lib/finnhub_ruby/models/trend.rb +19 -7
  198. data/lib/finnhub_ruby/models/twitter_sentiment_content.rb +279 -0
  199. data/lib/finnhub_ruby/models/upgrade_downgrade.rb +19 -7
  200. data/lib/finnhub_ruby/version.rb +2 -2
  201. data/release.sh +1 -1
  202. data/spec/api_client_spec.rb +1 -1
  203. data/spec/configuration_spec.rb +1 -1
  204. data/spec/models/breakdown_item_spec.rb +40 -0
  205. data/spec/models/dividends2_basic_spec.rb +40 -0
  206. data/spec/models/etf_profile_data_spec.rb +136 -0
  207. data/spec/models/etfs_country_exposure_spec.rb +40 -0
  208. data/spec/models/etfs_holdings_spec.rb +52 -0
  209. data/spec/models/etfs_profile_spec.rb +40 -0
  210. data/spec/models/etfs_sector_exposure_spec.rb +40 -0
  211. data/spec/models/fda_comittee_meeting_spec.rb +52 -0
  212. data/spec/models/filing_sentiment_spec.rb +82 -0
  213. data/spec/models/historical_nbbo_spec.rb +100 -0
  214. data/spec/models/insider_transactions_spec.rb +40 -0
  215. data/spec/models/international_filing_spec.rb +82 -0
  216. data/spec/models/investment_theme_portfolio_spec.rb +34 -0
  217. data/spec/models/investment_themes_thematic_investing_spec.rb +40 -0
  218. data/spec/models/key_customers_suppliers_spec.rb +52 -0
  219. data/spec/models/major_press_releases_spec.rb +40 -0
  220. data/spec/models/mutual_fund_country_exposure_data_spec.rb +40 -0
  221. data/spec/models/mutual_fund_sector_exposure_data_spec.rb +40 -0
  222. data/spec/models/mutual_fund_sector_exposure_spec.rb +40 -0
  223. data/spec/models/mutual_funds_country_exposure_spec.rb +40 -0
  224. data/spec/models/mutual_funds_holdings_spec.rb +52 -0
  225. data/spec/models/mutual_funds_profile_spec.rb +40 -0
  226. data/spec/models/ownership_spec.rb +40 -0
  227. data/spec/models/reddit_sentiment_content_spec.rb +70 -0
  228. data/spec/models/revenue_breakdown_spec.rb +46 -0
  229. data/spec/models/sec_sentiment_analysis_spec.rb +52 -0
  230. data/spec/models/social_sentiment_spec.rb +46 -0
  231. data/spec/models/supply_chain_relationships_spec.rb +40 -0
  232. data/spec/models/symbol_lookup_spec.rb +40 -0
  233. data/spec/models/transactions_spec.rb +70 -0
  234. data/spec/models/twitter_sentiment_content_spec.rb +70 -0
  235. data/spec/spec_helper.rb +1 -1
  236. metadata +129 -29
  237. data/test.rb +0 -157
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class FinancialStatements
@@ -28,6 +29,11 @@ module FinnhubRuby
28
29
  }
29
30
  end
30
31
 
32
+ # Returns all the JSON keys this model knows about
33
+ def self.acceptable_attributes
34
+ attribute_map.values
35
+ end
36
+
31
37
  # Attribute type mapping.
32
38
  def self.openapi_types
33
39
  {
@@ -115,7 +121,9 @@ module FinnhubRuby
115
121
  def build_from_hash(attributes)
116
122
  return nil unless attributes.is_a?(Hash)
117
123
  self.class.openapi_types.each_pair do |key, type|
118
- if type =~ /\AArray<(.*)>/i
124
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
125
+ self.send("#{key}=", nil)
126
+ elsif type =~ /\AArray<(.*)>/i
119
127
  # check to ensure the input is an array given that the attribute
120
128
  # is documented as an array but the input is not
121
129
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -123,7 +131,7 @@ module FinnhubRuby
123
131
  end
124
132
  elsif !attributes[self.class.attribute_map[key]].nil?
125
133
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
126
- end # or else data not found in attributes(hash), not an issue as the data can be optional
134
+ end
127
135
  end
128
136
 
129
137
  self
@@ -135,8 +143,8 @@ module FinnhubRuby
135
143
  # @return [Object] Deserialized data
136
144
  def _deserialize(type, value)
137
145
  case type.to_sym
138
- when :DateTime
139
- DateTime.parse(value)
146
+ when :Time
147
+ Time.parse(value)
140
148
  when :Date
141
149
  Date.parse(value)
142
150
  when :String
@@ -166,7 +174,9 @@ module FinnhubRuby
166
174
  end
167
175
  end
168
176
  else # model
169
- FinnhubRuby.const_get(type).build_from_hash(value)
177
+ # models (e.g. Pet) or oneOf
178
+ klass = FinnhubRuby.const_get(type)
179
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
170
180
  end
171
181
  end
172
182
 
@@ -192,7 +202,7 @@ module FinnhubRuby
192
202
  is_nullable = self.class.openapi_nullable.include?(attr)
193
203
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
194
204
  end
195
-
205
+
196
206
  hash[param] = _to_hash(value)
197
207
  end
198
208
  hash
@@ -215,5 +225,7 @@ module FinnhubRuby
215
225
  value
216
226
  end
217
227
  end
228
+
218
229
  end
230
+
219
231
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class FinancialsAsReported
@@ -32,6 +33,11 @@ module FinnhubRuby
32
33
  }
33
34
  end
34
35
 
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
35
41
  # Attribute type mapping.
36
42
  def self.openapi_types
37
43
  {
@@ -125,7 +131,9 @@ module FinnhubRuby
125
131
  def build_from_hash(attributes)
126
132
  return nil unless attributes.is_a?(Hash)
127
133
  self.class.openapi_types.each_pair do |key, type|
128
- if type =~ /\AArray<(.*)>/i
134
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
135
+ self.send("#{key}=", nil)
136
+ elsif type =~ /\AArray<(.*)>/i
129
137
  # check to ensure the input is an array given that the attribute
130
138
  # is documented as an array but the input is not
131
139
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -133,7 +141,7 @@ module FinnhubRuby
133
141
  end
134
142
  elsif !attributes[self.class.attribute_map[key]].nil?
135
143
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
136
- end # or else data not found in attributes(hash), not an issue as the data can be optional
144
+ end
137
145
  end
138
146
 
139
147
  self
@@ -145,8 +153,8 @@ module FinnhubRuby
145
153
  # @return [Object] Deserialized data
146
154
  def _deserialize(type, value)
147
155
  case type.to_sym
148
- when :DateTime
149
- DateTime.parse(value)
156
+ when :Time
157
+ Time.parse(value)
150
158
  when :Date
151
159
  Date.parse(value)
152
160
  when :String
@@ -176,7 +184,9 @@ module FinnhubRuby
176
184
  end
177
185
  end
178
186
  else # model
179
- FinnhubRuby.const_get(type).build_from_hash(value)
187
+ # models (e.g. Pet) or oneOf
188
+ klass = FinnhubRuby.const_get(type)
189
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
180
190
  end
181
191
  end
182
192
 
@@ -202,7 +212,7 @@ module FinnhubRuby
202
212
  is_nullable = self.class.openapi_nullable.include?(attr)
203
213
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
204
214
  end
205
-
215
+
206
216
  hash[param] = _to_hash(value)
207
217
  end
208
218
  hash
@@ -225,5 +235,7 @@ module FinnhubRuby
225
235
  value
226
236
  end
227
237
  end
238
+
228
239
  end
240
+
229
241
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class ForexCandles
@@ -48,6 +49,11 @@ module FinnhubRuby
48
49
  }
49
50
  end
50
51
 
52
+ # Returns all the JSON keys this model knows about
53
+ def self.acceptable_attributes
54
+ attribute_map.values
55
+ end
56
+
51
57
  # Attribute type mapping.
52
58
  def self.openapi_types
53
59
  {
@@ -175,7 +181,9 @@ module FinnhubRuby
175
181
  def build_from_hash(attributes)
176
182
  return nil unless attributes.is_a?(Hash)
177
183
  self.class.openapi_types.each_pair do |key, type|
178
- if type =~ /\AArray<(.*)>/i
184
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
185
+ self.send("#{key}=", nil)
186
+ elsif type =~ /\AArray<(.*)>/i
179
187
  # check to ensure the input is an array given that the attribute
180
188
  # is documented as an array but the input is not
181
189
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -183,7 +191,7 @@ module FinnhubRuby
183
191
  end
184
192
  elsif !attributes[self.class.attribute_map[key]].nil?
185
193
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
186
- end # or else data not found in attributes(hash), not an issue as the data can be optional
194
+ end
187
195
  end
188
196
 
189
197
  self
@@ -195,8 +203,8 @@ module FinnhubRuby
195
203
  # @return [Object] Deserialized data
196
204
  def _deserialize(type, value)
197
205
  case type.to_sym
198
- when :DateTime
199
- DateTime.parse(value)
206
+ when :Time
207
+ Time.parse(value)
200
208
  when :Date
201
209
  Date.parse(value)
202
210
  when :String
@@ -226,7 +234,9 @@ module FinnhubRuby
226
234
  end
227
235
  end
228
236
  else # model
229
- FinnhubRuby.const_get(type).build_from_hash(value)
237
+ # models (e.g. Pet) or oneOf
238
+ klass = FinnhubRuby.const_get(type)
239
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
230
240
  end
231
241
  end
232
242
 
@@ -252,7 +262,7 @@ module FinnhubRuby
252
262
  is_nullable = self.class.openapi_nullable.include?(attr)
253
263
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
254
264
  end
255
-
265
+
256
266
  hash[param] = _to_hash(value)
257
267
  end
258
268
  hash
@@ -275,5 +285,7 @@ module FinnhubRuby
275
285
  value
276
286
  end
277
287
  end
288
+
278
289
  end
290
+
279
291
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class ForexSymbol
@@ -32,6 +33,11 @@ module FinnhubRuby
32
33
  }
33
34
  end
34
35
 
36
+ # Returns all the JSON keys this model knows about
37
+ def self.acceptable_attributes
38
+ attribute_map.values
39
+ end
40
+
35
41
  # Attribute type mapping.
36
42
  def self.openapi_types
37
43
  {
@@ -123,7 +129,9 @@ module FinnhubRuby
123
129
  def build_from_hash(attributes)
124
130
  return nil unless attributes.is_a?(Hash)
125
131
  self.class.openapi_types.each_pair do |key, type|
126
- if type =~ /\AArray<(.*)>/i
132
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
133
+ self.send("#{key}=", nil)
134
+ elsif type =~ /\AArray<(.*)>/i
127
135
  # check to ensure the input is an array given that the attribute
128
136
  # is documented as an array but the input is not
129
137
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -131,7 +139,7 @@ module FinnhubRuby
131
139
  end
132
140
  elsif !attributes[self.class.attribute_map[key]].nil?
133
141
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
134
- end # or else data not found in attributes(hash), not an issue as the data can be optional
142
+ end
135
143
  end
136
144
 
137
145
  self
@@ -143,8 +151,8 @@ module FinnhubRuby
143
151
  # @return [Object] Deserialized data
144
152
  def _deserialize(type, value)
145
153
  case type.to_sym
146
- when :DateTime
147
- DateTime.parse(value)
154
+ when :Time
155
+ Time.parse(value)
148
156
  when :Date
149
157
  Date.parse(value)
150
158
  when :String
@@ -174,7 +182,9 @@ module FinnhubRuby
174
182
  end
175
183
  end
176
184
  else # model
177
- FinnhubRuby.const_get(type).build_from_hash(value)
185
+ # models (e.g. Pet) or oneOf
186
+ klass = FinnhubRuby.const_get(type)
187
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
178
188
  end
179
189
  end
180
190
 
@@ -200,7 +210,7 @@ module FinnhubRuby
200
210
  is_nullable = self.class.openapi_nullable.include?(attr)
201
211
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
202
212
  end
203
-
213
+
204
214
  hash[param] = _to_hash(value)
205
215
  end
206
216
  hash
@@ -223,5 +233,7 @@ module FinnhubRuby
223
233
  value
224
234
  end
225
235
  end
236
+
226
237
  end
238
+
227
239
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class Forexrates
@@ -27,6 +28,11 @@ module FinnhubRuby
27
28
  }
28
29
  end
29
30
 
31
+ # Returns all the JSON keys this model knows about
32
+ def self.acceptable_attributes
33
+ attribute_map.values
34
+ end
35
+
30
36
  # Attribute type mapping.
31
37
  def self.openapi_types
32
38
  {
@@ -112,7 +118,9 @@ module FinnhubRuby
112
118
  def build_from_hash(attributes)
113
119
  return nil unless attributes.is_a?(Hash)
114
120
  self.class.openapi_types.each_pair do |key, type|
115
- if type =~ /\AArray<(.*)>/i
121
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
122
+ self.send("#{key}=", nil)
123
+ elsif type =~ /\AArray<(.*)>/i
116
124
  # check to ensure the input is an array given that the attribute
117
125
  # is documented as an array but the input is not
118
126
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -120,7 +128,7 @@ module FinnhubRuby
120
128
  end
121
129
  elsif !attributes[self.class.attribute_map[key]].nil?
122
130
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
123
- end # or else data not found in attributes(hash), not an issue as the data can be optional
131
+ end
124
132
  end
125
133
 
126
134
  self
@@ -132,8 +140,8 @@ module FinnhubRuby
132
140
  # @return [Object] Deserialized data
133
141
  def _deserialize(type, value)
134
142
  case type.to_sym
135
- when :DateTime
136
- DateTime.parse(value)
143
+ when :Time
144
+ Time.parse(value)
137
145
  when :Date
138
146
  Date.parse(value)
139
147
  when :String
@@ -163,7 +171,9 @@ module FinnhubRuby
163
171
  end
164
172
  end
165
173
  else # model
166
- FinnhubRuby.const_get(type).build_from_hash(value)
174
+ # models (e.g. Pet) or oneOf
175
+ klass = FinnhubRuby.const_get(type)
176
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
167
177
  end
168
178
  end
169
179
 
@@ -189,7 +199,7 @@ module FinnhubRuby
189
199
  is_nullable = self.class.openapi_nullable.include?(attr)
190
200
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
191
201
  end
192
-
202
+
193
203
  hash[param] = _to_hash(value)
194
204
  end
195
205
  hash
@@ -212,5 +222,7 @@ module FinnhubRuby
212
222
  value
213
223
  end
214
224
  end
225
+
215
226
  end
227
+
216
228
  end
@@ -6,11 +6,12 @@
6
6
  The version of the OpenAPI document: 1.0.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.1
9
+ OpenAPI Generator version: 5.2.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module FinnhubRuby
16
17
  class FundOwnership
@@ -28,6 +29,11 @@ module FinnhubRuby
28
29
  }
29
30
  end
30
31
 
32
+ # Returns all the JSON keys this model knows about
33
+ def self.acceptable_attributes
34
+ attribute_map.values
35
+ end
36
+
31
37
  # Attribute type mapping.
32
38
  def self.openapi_types
33
39
  {
@@ -115,7 +121,9 @@ module FinnhubRuby
115
121
  def build_from_hash(attributes)
116
122
  return nil unless attributes.is_a?(Hash)
117
123
  self.class.openapi_types.each_pair do |key, type|
118
- if type =~ /\AArray<(.*)>/i
124
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
125
+ self.send("#{key}=", nil)
126
+ elsif type =~ /\AArray<(.*)>/i
119
127
  # check to ensure the input is an array given that the attribute
120
128
  # is documented as an array but the input is not
121
129
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -123,7 +131,7 @@ module FinnhubRuby
123
131
  end
124
132
  elsif !attributes[self.class.attribute_map[key]].nil?
125
133
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
126
- end # or else data not found in attributes(hash), not an issue as the data can be optional
134
+ end
127
135
  end
128
136
 
129
137
  self
@@ -135,8 +143,8 @@ module FinnhubRuby
135
143
  # @return [Object] Deserialized data
136
144
  def _deserialize(type, value)
137
145
  case type.to_sym
138
- when :DateTime
139
- DateTime.parse(value)
146
+ when :Time
147
+ Time.parse(value)
140
148
  when :Date
141
149
  Date.parse(value)
142
150
  when :String
@@ -166,7 +174,9 @@ module FinnhubRuby
166
174
  end
167
175
  end
168
176
  else # model
169
- FinnhubRuby.const_get(type).build_from_hash(value)
177
+ # models (e.g. Pet) or oneOf
178
+ klass = FinnhubRuby.const_get(type)
179
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
170
180
  end
171
181
  end
172
182
 
@@ -192,7 +202,7 @@ module FinnhubRuby
192
202
  is_nullable = self.class.openapi_nullable.include?(attr)
193
203
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
194
204
  end
195
-
205
+
196
206
  hash[param] = _to_hash(value)
197
207
  end
198
208
  hash
@@ -215,5 +225,7 @@ module FinnhubRuby
215
225
  value
216
226
  end
217
227
  end
228
+
218
229
  end
230
+
219
231
  end