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 EarningRelease
@@ -35,7 +36,7 @@ module FinnhubRuby
35
36
  # EPS actual.
36
37
  attr_accessor :eps_actual
37
38
 
38
- # Revenue estimate.
39
+ # Revenue estimate including Finnhub's proprietary estimates.
39
40
  attr_accessor :revenue_estimate
40
41
 
41
42
  # Revenue actual.
@@ -56,6 +57,11 @@ module FinnhubRuby
56
57
  }
57
58
  end
58
59
 
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ attribute_map.values
63
+ end
64
+
59
65
  # Attribute type mapping.
60
66
  def self.openapi_types
61
67
  {
@@ -183,7 +189,9 @@ module FinnhubRuby
183
189
  def build_from_hash(attributes)
184
190
  return nil unless attributes.is_a?(Hash)
185
191
  self.class.openapi_types.each_pair do |key, type|
186
- if type =~ /\AArray<(.*)>/i
192
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
193
+ self.send("#{key}=", nil)
194
+ elsif type =~ /\AArray<(.*)>/i
187
195
  # check to ensure the input is an array given that the attribute
188
196
  # is documented as an array but the input is not
189
197
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -191,7 +199,7 @@ module FinnhubRuby
191
199
  end
192
200
  elsif !attributes[self.class.attribute_map[key]].nil?
193
201
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
194
- end # or else data not found in attributes(hash), not an issue as the data can be optional
202
+ end
195
203
  end
196
204
 
197
205
  self
@@ -203,8 +211,8 @@ module FinnhubRuby
203
211
  # @return [Object] Deserialized data
204
212
  def _deserialize(type, value)
205
213
  case type.to_sym
206
- when :DateTime
207
- DateTime.parse(value)
214
+ when :Time
215
+ Time.parse(value)
208
216
  when :Date
209
217
  Date.parse(value)
210
218
  when :String
@@ -234,7 +242,9 @@ module FinnhubRuby
234
242
  end
235
243
  end
236
244
  else # model
237
- FinnhubRuby.const_get(type).build_from_hash(value)
245
+ # models (e.g. Pet) or oneOf
246
+ klass = FinnhubRuby.const_get(type)
247
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
238
248
  end
239
249
  end
240
250
 
@@ -260,7 +270,7 @@ module FinnhubRuby
260
270
  is_nullable = self.class.openapi_nullable.include?(attr)
261
271
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
262
272
  end
263
-
273
+
264
274
  hash[param] = _to_hash(value)
265
275
  end
266
276
  hash
@@ -283,5 +293,7 @@ module FinnhubRuby
283
293
  value
284
294
  end
285
295
  end
296
+
286
297
  end
298
+
287
299
  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 EarningResult
@@ -20,6 +21,12 @@ module FinnhubRuby
20
21
  # Estimated earning.
21
22
  attr_accessor :estimate
22
23
 
24
+ # Surprise - The difference between actual and estimate.
25
+ attr_accessor :surprise
26
+
27
+ # Surprise percent.
28
+ attr_accessor :surprise_percent
29
+
23
30
  # Reported period.
24
31
  attr_accessor :period
25
32
 
@@ -31,16 +38,25 @@ module FinnhubRuby
31
38
  {
32
39
  :'actual' => :'actual',
33
40
  :'estimate' => :'estimate',
41
+ :'surprise' => :'surprise',
42
+ :'surprise_percent' => :'surprisePercent',
34
43
  :'period' => :'period',
35
44
  :'symbol' => :'symbol'
36
45
  }
37
46
  end
38
47
 
48
+ # Returns all the JSON keys this model knows about
49
+ def self.acceptable_attributes
50
+ attribute_map.values
51
+ end
52
+
39
53
  # Attribute type mapping.
40
54
  def self.openapi_types
41
55
  {
42
56
  :'actual' => :'Float',
43
57
  :'estimate' => :'Float',
58
+ :'surprise' => :'Float',
59
+ :'surprise_percent' => :'Float',
44
60
  :'period' => :'Date',
45
61
  :'symbol' => :'String'
46
62
  }
@@ -75,6 +91,14 @@ module FinnhubRuby
75
91
  self.estimate = attributes[:'estimate']
76
92
  end
77
93
 
94
+ if attributes.key?(:'surprise')
95
+ self.surprise = attributes[:'surprise']
96
+ end
97
+
98
+ if attributes.key?(:'surprise_percent')
99
+ self.surprise_percent = attributes[:'surprise_percent']
100
+ end
101
+
78
102
  if attributes.key?(:'period')
79
103
  self.period = attributes[:'period']
80
104
  end
@@ -104,6 +128,8 @@ module FinnhubRuby
104
128
  self.class == o.class &&
105
129
  actual == o.actual &&
106
130
  estimate == o.estimate &&
131
+ surprise == o.surprise &&
132
+ surprise_percent == o.surprise_percent &&
107
133
  period == o.period &&
108
134
  symbol == o.symbol
109
135
  end
@@ -117,7 +143,7 @@ module FinnhubRuby
117
143
  # Calculates hash code according to all attributes.
118
144
  # @return [Integer] Hash code
119
145
  def hash
120
- [actual, estimate, period, symbol].hash
146
+ [actual, estimate, surprise, surprise_percent, period, symbol].hash
121
147
  end
122
148
 
123
149
  # Builds the object from hash
@@ -133,7 +159,9 @@ module FinnhubRuby
133
159
  def build_from_hash(attributes)
134
160
  return nil unless attributes.is_a?(Hash)
135
161
  self.class.openapi_types.each_pair do |key, type|
136
- if type =~ /\AArray<(.*)>/i
162
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
163
+ self.send("#{key}=", nil)
164
+ elsif type =~ /\AArray<(.*)>/i
137
165
  # check to ensure the input is an array given that the attribute
138
166
  # is documented as an array but the input is not
139
167
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -141,7 +169,7 @@ module FinnhubRuby
141
169
  end
142
170
  elsif !attributes[self.class.attribute_map[key]].nil?
143
171
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
144
- end # or else data not found in attributes(hash), not an issue as the data can be optional
172
+ end
145
173
  end
146
174
 
147
175
  self
@@ -153,8 +181,8 @@ module FinnhubRuby
153
181
  # @return [Object] Deserialized data
154
182
  def _deserialize(type, value)
155
183
  case type.to_sym
156
- when :DateTime
157
- DateTime.parse(value)
184
+ when :Time
185
+ Time.parse(value)
158
186
  when :Date
159
187
  Date.parse(value)
160
188
  when :String
@@ -184,7 +212,9 @@ module FinnhubRuby
184
212
  end
185
213
  end
186
214
  else # model
187
- FinnhubRuby.const_get(type).build_from_hash(value)
215
+ # models (e.g. Pet) or oneOf
216
+ klass = FinnhubRuby.const_get(type)
217
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
188
218
  end
189
219
  end
190
220
 
@@ -210,7 +240,7 @@ module FinnhubRuby
210
240
  is_nullable = self.class.openapi_nullable.include?(attr)
211
241
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
212
242
  end
213
-
243
+
214
244
  hash[param] = _to_hash(value)
215
245
  end
216
246
  hash
@@ -233,5 +263,7 @@ module FinnhubRuby
233
263
  value
234
264
  end
235
265
  end
266
+
236
267
  end
268
+
237
269
  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 EarningsCalendar
@@ -24,6 +25,11 @@ module FinnhubRuby
24
25
  }
25
26
  end
26
27
 
28
+ # Returns all the JSON keys this model knows about
29
+ def self.acceptable_attributes
30
+ attribute_map.values
31
+ end
32
+
27
33
  # Attribute type mapping.
28
34
  def self.openapi_types
29
35
  {
@@ -105,7 +111,9 @@ module FinnhubRuby
105
111
  def build_from_hash(attributes)
106
112
  return nil unless attributes.is_a?(Hash)
107
113
  self.class.openapi_types.each_pair do |key, type|
108
- if type =~ /\AArray<(.*)>/i
114
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
115
+ self.send("#{key}=", nil)
116
+ elsif type =~ /\AArray<(.*)>/i
109
117
  # check to ensure the input is an array given that the attribute
110
118
  # is documented as an array but the input is not
111
119
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -113,7 +121,7 @@ module FinnhubRuby
113
121
  end
114
122
  elsif !attributes[self.class.attribute_map[key]].nil?
115
123
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
116
- end # or else data not found in attributes(hash), not an issue as the data can be optional
124
+ end
117
125
  end
118
126
 
119
127
  self
@@ -125,8 +133,8 @@ module FinnhubRuby
125
133
  # @return [Object] Deserialized data
126
134
  def _deserialize(type, value)
127
135
  case type.to_sym
128
- when :DateTime
129
- DateTime.parse(value)
136
+ when :Time
137
+ Time.parse(value)
130
138
  when :Date
131
139
  Date.parse(value)
132
140
  when :String
@@ -156,7 +164,9 @@ module FinnhubRuby
156
164
  end
157
165
  end
158
166
  else # model
159
- FinnhubRuby.const_get(type).build_from_hash(value)
167
+ # models (e.g. Pet) or oneOf
168
+ klass = FinnhubRuby.const_get(type)
169
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
160
170
  end
161
171
  end
162
172
 
@@ -182,7 +192,7 @@ module FinnhubRuby
182
192
  is_nullable = self.class.openapi_nullable.include?(attr)
183
193
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
184
194
  end
185
-
195
+
186
196
  hash[param] = _to_hash(value)
187
197
  end
188
198
  hash
@@ -205,5 +215,7 @@ module FinnhubRuby
205
215
  value
206
216
  end
207
217
  end
218
+
208
219
  end
220
+
209
221
  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 EarningsCallTranscripts
@@ -56,6 +57,11 @@ module FinnhubRuby
56
57
  }
57
58
  end
58
59
 
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ attribute_map.values
63
+ end
64
+
59
65
  # Attribute type mapping.
60
66
  def self.openapi_types
61
67
  {
@@ -65,7 +71,7 @@ module FinnhubRuby
65
71
  :'audio' => :'String',
66
72
  :'id' => :'String',
67
73
  :'title' => :'String',
68
- :'time' => :'DateTime',
74
+ :'time' => :'Time',
69
75
  :'year' => :'Integer',
70
76
  :'quarter' => :'Integer'
71
77
  }
@@ -187,7 +193,9 @@ module FinnhubRuby
187
193
  def build_from_hash(attributes)
188
194
  return nil unless attributes.is_a?(Hash)
189
195
  self.class.openapi_types.each_pair do |key, type|
190
- if type =~ /\AArray<(.*)>/i
196
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
197
+ self.send("#{key}=", nil)
198
+ elsif type =~ /\AArray<(.*)>/i
191
199
  # check to ensure the input is an array given that the attribute
192
200
  # is documented as an array but the input is not
193
201
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -195,7 +203,7 @@ module FinnhubRuby
195
203
  end
196
204
  elsif !attributes[self.class.attribute_map[key]].nil?
197
205
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
198
- end # or else data not found in attributes(hash), not an issue as the data can be optional
206
+ end
199
207
  end
200
208
 
201
209
  self
@@ -207,8 +215,8 @@ module FinnhubRuby
207
215
  # @return [Object] Deserialized data
208
216
  def _deserialize(type, value)
209
217
  case type.to_sym
210
- when :DateTime
211
- DateTime.parse(value)
218
+ when :Time
219
+ Time.parse(value)
212
220
  when :Date
213
221
  Date.parse(value)
214
222
  when :String
@@ -238,7 +246,9 @@ module FinnhubRuby
238
246
  end
239
247
  end
240
248
  else # model
241
- FinnhubRuby.const_get(type).build_from_hash(value)
249
+ # models (e.g. Pet) or oneOf
250
+ klass = FinnhubRuby.const_get(type)
251
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
242
252
  end
243
253
  end
244
254
 
@@ -264,7 +274,7 @@ module FinnhubRuby
264
274
  is_nullable = self.class.openapi_nullable.include?(attr)
265
275
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
266
276
  end
267
-
277
+
268
278
  hash[param] = _to_hash(value)
269
279
  end
270
280
  hash
@@ -287,5 +297,7 @@ module FinnhubRuby
287
297
  value
288
298
  end
289
299
  end
300
+
290
301
  end
302
+
291
303
  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 EarningsCallTranscriptsList
@@ -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