freeclimb 3.0.2 → 4.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (336) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +22 -0
  3. data/Gemfile +4 -1
  4. data/Gemfile.lock +33 -19
  5. data/README.md +40 -35
  6. data/docs/AccountRequest.md +9 -8
  7. data/docs/AccountResult.md +27 -26
  8. data/docs/AccountResultAllOf.md +19 -18
  9. data/docs/AddToConference.md +25 -24
  10. data/docs/AddToConferenceAllOf.md +25 -24
  11. data/docs/ApplicationList.md +21 -20
  12. data/docs/ApplicationListAllOf.md +7 -6
  13. data/docs/ApplicationRequest.md +19 -18
  14. data/docs/ApplicationResult.md +31 -30
  15. data/docs/ApplicationResultAllOf.md +23 -22
  16. data/docs/AvailableNumber.md +19 -14
  17. data/docs/AvailableNumberList.md +21 -20
  18. data/docs/AvailableNumberListAllOf.md +7 -6
  19. data/docs/BuyIncomingNumberRequest.md +11 -10
  20. data/docs/CallList.md +21 -20
  21. data/docs/CallListAllOf.md +7 -6
  22. data/docs/CallResult.md +43 -42
  23. data/docs/CallResultAllOf.md +35 -34
  24. data/docs/Capabilities.md +26 -0
  25. data/docs/ConferenceList.md +21 -20
  26. data/docs/ConferenceListAllOf.md +7 -6
  27. data/docs/ConferenceParticipantList.md +21 -20
  28. data/docs/ConferenceParticipantListAllOf.md +7 -6
  29. data/docs/ConferenceParticipantResult.md +25 -24
  30. data/docs/ConferenceParticipantResultAllOf.md +17 -16
  31. data/docs/ConferenceResult.md +33 -32
  32. data/docs/ConferenceResultAllOf.md +25 -24
  33. data/docs/CreateConference.md +17 -16
  34. data/docs/CreateConferenceAllOf.md +17 -16
  35. data/docs/CreateConferenceRequest.md +15 -14
  36. data/docs/DefaultApi.md +1625 -647
  37. data/docs/Dequeue.md +3 -4
  38. data/docs/Enqueue.md +13 -12
  39. data/docs/EnqueueAllOf.md +13 -12
  40. data/docs/FilterLogsRequest.md +7 -6
  41. data/docs/GetDigits.md +23 -22
  42. data/docs/GetDigitsAllOf.md +23 -22
  43. data/docs/GetSpeech.md +31 -30
  44. data/docs/GetSpeechAllOf.md +31 -30
  45. data/docs/Hangup.md +7 -6
  46. data/docs/HangupAllOf.md +7 -6
  47. data/docs/IncomingNumberList.md +21 -20
  48. data/docs/IncomingNumberListAllOf.md +7 -6
  49. data/docs/IncomingNumberRequest.md +9 -8
  50. data/docs/IncomingNumberResult.md +35 -30
  51. data/docs/IncomingNumberResultAllOf.md +27 -22
  52. data/docs/LogList.md +21 -20
  53. data/docs/LogListAllOf.md +7 -6
  54. data/docs/LogResult.md +19 -18
  55. data/docs/MakeCallRequest.md +25 -24
  56. data/docs/MessageRequest.md +23 -22
  57. data/docs/MessageRequestAllOf.md +15 -14
  58. data/docs/MessageResult.md +29 -28
  59. data/docs/MessageResultAllOf.md +21 -20
  60. data/docs/MessagesList.md +21 -20
  61. data/docs/MessagesListAllOf.md +7 -6
  62. data/docs/MutableResourceModel.md +13 -12
  63. data/docs/OutDial.md +25 -24
  64. data/docs/OutDialAllOf.md +25 -24
  65. data/docs/PaginationModel.md +19 -18
  66. data/docs/Park.md +22 -0
  67. data/docs/ParkAllOf.md +22 -0
  68. data/docs/Pause.md +7 -6
  69. data/docs/PauseAllOf.md +7 -6
  70. data/docs/PerclCommand.md +7 -6
  71. data/docs/PerclScript.md +7 -6
  72. data/docs/Play.md +13 -12
  73. data/docs/PlayAllOf.md +13 -12
  74. data/docs/PlayEarlyMedia.md +7 -6
  75. data/docs/PlayEarlyMediaAllOf.md +7 -6
  76. data/docs/QueueList.md +21 -20
  77. data/docs/QueueListAllOf.md +7 -6
  78. data/docs/QueueMember.md +15 -14
  79. data/docs/QueueMemberList.md +21 -20
  80. data/docs/QueueMemberListAllOf.md +7 -6
  81. data/docs/QueueRequest.md +9 -8
  82. data/docs/QueueResult.md +27 -26
  83. data/docs/QueueResultAllOf.md +19 -18
  84. data/docs/RecordUtterance.md +19 -18
  85. data/docs/RecordUtteranceAllOf.md +19 -18
  86. data/docs/RecordingList.md +21 -20
  87. data/docs/RecordingListAllOf.md +7 -6
  88. data/docs/RecordingResult.md +23 -22
  89. data/docs/RecordingResultAllOf.md +15 -14
  90. data/docs/Redirect.md +7 -6
  91. data/docs/RedirectAllOf.md +7 -6
  92. data/docs/Reject.md +7 -6
  93. data/docs/RejectAllOf.md +7 -6
  94. data/docs/RemoveFromConference.md +7 -6
  95. data/docs/RemoveFromConferenceAllOf.md +7 -6
  96. data/docs/Say.md +15 -14
  97. data/docs/SayAllOf.md +15 -14
  98. data/docs/SendDigits.md +11 -10
  99. data/docs/SendDigitsAllOf.md +11 -10
  100. data/docs/SetListen.md +9 -8
  101. data/docs/SetListenAllOf.md +9 -8
  102. data/docs/SetTalk.md +9 -8
  103. data/docs/SetTalkAllOf.md +9 -8
  104. data/docs/Sms.md +13 -12
  105. data/docs/SmsAllOf.md +13 -12
  106. data/docs/StartRecordCall.md +3 -4
  107. data/docs/TerminateConference.md +7 -6
  108. data/docs/TerminateConferenceAllOf.md +7 -6
  109. data/docs/Unpark.md +15 -0
  110. data/docs/UpdateCallRequest.md +7 -6
  111. data/docs/UpdateConferenceParticipantRequest.md +9 -8
  112. data/docs/UpdateConferenceRequest.md +11 -10
  113. data/freeclimb.gemspec +3 -4
  114. data/lib/freeclimb/api/default_api.rb +434 -278
  115. data/lib/freeclimb/api_client.rb +55 -51
  116. data/lib/freeclimb/api_error.rb +2 -2
  117. data/lib/freeclimb/configuration.rb +41 -11
  118. data/lib/freeclimb/models/account_request.rb +20 -8
  119. data/lib/freeclimb/models/account_result.rb +39 -8
  120. data/lib/freeclimb/models/account_result_all_of.rb +39 -8
  121. data/lib/freeclimb/models/add_to_conference.rb +21 -8
  122. data/lib/freeclimb/models/add_to_conference_all_of.rb +20 -8
  123. data/lib/freeclimb/models/application_list.rb +28 -8
  124. data/lib/freeclimb/models/application_list_all_of.rb +21 -8
  125. data/lib/freeclimb/models/application_request.rb +20 -8
  126. data/lib/freeclimb/models/application_result.rb +29 -8
  127. data/lib/freeclimb/models/application_result_all_of.rb +29 -8
  128. data/lib/freeclimb/models/available_number.rb +46 -9
  129. data/lib/freeclimb/models/available_number_list.rb +28 -8
  130. data/lib/freeclimb/models/available_number_list_all_of.rb +21 -8
  131. data/lib/freeclimb/models/buy_incoming_number_request.rb +20 -8
  132. data/lib/freeclimb/models/call_list.rb +28 -8
  133. data/lib/freeclimb/models/call_list_all_of.rb +21 -8
  134. data/lib/freeclimb/models/call_result.rb +35 -8
  135. data/lib/freeclimb/models/call_result_all_of.rb +35 -8
  136. data/lib/freeclimb/models/capabilities.rb +265 -0
  137. data/lib/freeclimb/models/conference_list.rb +28 -8
  138. data/lib/freeclimb/models/conference_list_all_of.rb +21 -8
  139. data/lib/freeclimb/models/conference_participant_list.rb +28 -8
  140. data/lib/freeclimb/models/conference_participant_list_all_of.rb +21 -8
  141. data/lib/freeclimb/models/conference_participant_result.rb +26 -8
  142. data/lib/freeclimb/models/conference_participant_result_all_of.rb +26 -8
  143. data/lib/freeclimb/models/conference_result.rb +30 -8
  144. data/lib/freeclimb/models/conference_result_all_of.rb +30 -8
  145. data/lib/freeclimb/models/create_conference.rb +21 -8
  146. data/lib/freeclimb/models/create_conference_all_of.rb +20 -8
  147. data/lib/freeclimb/models/create_conference_request.rb +20 -8
  148. data/lib/freeclimb/models/dequeue.rb +21 -8
  149. data/lib/freeclimb/models/enqueue.rb +21 -8
  150. data/lib/freeclimb/models/enqueue_all_of.rb +20 -8
  151. data/lib/freeclimb/models/filter_logs_request.rb +20 -8
  152. data/lib/freeclimb/models/get_digits.rb +21 -8
  153. data/lib/freeclimb/models/get_digits_all_of.rb +20 -8
  154. data/lib/freeclimb/models/get_speech.rb +21 -8
  155. data/lib/freeclimb/models/get_speech_all_of.rb +20 -8
  156. data/lib/freeclimb/models/hangup.rb +21 -8
  157. data/lib/freeclimb/models/hangup_all_of.rb +20 -8
  158. data/lib/freeclimb/models/incoming_number_list.rb +28 -8
  159. data/lib/freeclimb/models/incoming_number_list_all_of.rb +21 -8
  160. data/lib/freeclimb/models/incoming_number_request.rb +20 -8
  161. data/lib/freeclimb/models/incoming_number_result.rb +50 -9
  162. data/lib/freeclimb/models/incoming_number_result_all_of.rb +50 -9
  163. data/lib/freeclimb/models/log_list.rb +28 -8
  164. data/lib/freeclimb/models/log_list_all_of.rb +21 -8
  165. data/lib/freeclimb/models/log_result.rb +27 -8
  166. data/lib/freeclimb/models/make_call_request.rb +22 -8
  167. data/lib/freeclimb/models/message_request.rb +20 -8
  168. data/lib/freeclimb/models/message_request_all_of.rb +20 -8
  169. data/lib/freeclimb/models/message_result.rb +28 -8
  170. data/lib/freeclimb/models/message_result_all_of.rb +28 -8
  171. data/lib/freeclimb/models/messages_list.rb +28 -8
  172. data/lib/freeclimb/models/messages_list_all_of.rb +21 -8
  173. data/lib/freeclimb/models/mutable_resource_model.rb +20 -8
  174. data/lib/freeclimb/models/out_dial.rb +21 -8
  175. data/lib/freeclimb/models/out_dial_all_of.rb +20 -8
  176. data/lib/freeclimb/models/pagination_model.rb +27 -8
  177. data/lib/freeclimb/models/park.rb +263 -0
  178. data/lib/freeclimb/models/park_all_of.rb +249 -0
  179. data/lib/freeclimb/models/pause.rb +21 -8
  180. data/lib/freeclimb/models/pause_all_of.rb +20 -8
  181. data/lib/freeclimb/models/percl_command.rb +38 -8
  182. data/lib/freeclimb/models/percl_script.rb +24 -8
  183. data/lib/freeclimb/models/play.rb +21 -8
  184. data/lib/freeclimb/models/play_all_of.rb +20 -8
  185. data/lib/freeclimb/models/play_early_media.rb +21 -8
  186. data/lib/freeclimb/models/play_early_media_all_of.rb +20 -8
  187. data/lib/freeclimb/models/queue_list.rb +28 -8
  188. data/lib/freeclimb/models/queue_list_all_of.rb +21 -8
  189. data/lib/freeclimb/models/queue_member.rb +25 -8
  190. data/lib/freeclimb/models/queue_member_list.rb +28 -8
  191. data/lib/freeclimb/models/queue_member_list_all_of.rb +21 -8
  192. data/lib/freeclimb/models/queue_request.rb +22 -8
  193. data/lib/freeclimb/models/queue_result.rb +27 -8
  194. data/lib/freeclimb/models/queue_result_all_of.rb +27 -8
  195. data/lib/freeclimb/models/record_utterance.rb +21 -8
  196. data/lib/freeclimb/models/record_utterance_all_of.rb +20 -8
  197. data/lib/freeclimb/models/recording_list.rb +28 -8
  198. data/lib/freeclimb/models/recording_list_all_of.rb +21 -8
  199. data/lib/freeclimb/models/recording_result.rb +25 -8
  200. data/lib/freeclimb/models/recording_result_all_of.rb +25 -8
  201. data/lib/freeclimb/models/redirect.rb +21 -8
  202. data/lib/freeclimb/models/redirect_all_of.rb +20 -8
  203. data/lib/freeclimb/models/reject.rb +21 -8
  204. data/lib/freeclimb/models/reject_all_of.rb +20 -8
  205. data/lib/freeclimb/models/remove_from_conference.rb +21 -8
  206. data/lib/freeclimb/models/remove_from_conference_all_of.rb +20 -8
  207. data/lib/freeclimb/models/say.rb +23 -8
  208. data/lib/freeclimb/models/say_all_of.rb +22 -8
  209. data/lib/freeclimb/models/send_digits.rb +21 -8
  210. data/lib/freeclimb/models/send_digits_all_of.rb +20 -8
  211. data/lib/freeclimb/models/set_listen.rb +21 -8
  212. data/lib/freeclimb/models/set_listen_all_of.rb +20 -8
  213. data/lib/freeclimb/models/set_talk.rb +21 -8
  214. data/lib/freeclimb/models/set_talk_all_of.rb +20 -8
  215. data/lib/freeclimb/models/sms.rb +21 -8
  216. data/lib/freeclimb/models/sms_all_of.rb +20 -8
  217. data/lib/freeclimb/models/start_record_call.rb +21 -8
  218. data/lib/freeclimb/models/terminate_conference.rb +21 -8
  219. data/lib/freeclimb/models/terminate_conference_all_of.rb +20 -8
  220. data/lib/freeclimb/models/unpark.rb +222 -0
  221. data/lib/freeclimb/models/update_call_request.rb +20 -8
  222. data/lib/freeclimb/models/update_conference_participant_request.rb +20 -8
  223. data/lib/freeclimb/models/update_conference_request.rb +20 -8
  224. data/lib/freeclimb/version.rb +3 -3
  225. data/lib/freeclimb.rb +28 -52
  226. data/spec/api/default_api_spec.rb +1004 -21
  227. data/spec/api_client_spec.rb +5 -5
  228. data/spec/configuration_spec.rb +10 -10
  229. data/spec/factories.rb +80 -0
  230. data/spec/models/account_request_spec.rb +5 -12
  231. data/spec/models/account_result_spec.rb +10 -13
  232. data/spec/models/add_to_conference_spec.rb +5 -12
  233. data/spec/models/application_list_spec.rb +5 -12
  234. data/spec/models/application_request_spec.rb +5 -12
  235. data/spec/models/application_result_spec.rb +5 -12
  236. data/spec/models/available_number_list_spec.rb +5 -12
  237. data/spec/models/available_number_spec.rb +11 -12
  238. data/spec/models/buy_incoming_number_request_spec.rb +5 -12
  239. data/spec/models/call_list_spec.rb +5 -12
  240. data/spec/models/call_result_spec.rb +6 -13
  241. data/spec/models/{say_all_of_spec.rb → capabilities_spec.rb} +13 -20
  242. data/spec/models/conference_list_spec.rb +5 -12
  243. data/spec/models/conference_participant_list_spec.rb +5 -12
  244. data/spec/models/conference_participant_result_spec.rb +5 -12
  245. data/spec/models/conference_result_spec.rb +7 -14
  246. data/spec/models/create_conference_request_spec.rb +6 -13
  247. data/spec/models/create_conference_spec.rb +5 -12
  248. data/spec/models/dequeue_spec.rb +5 -12
  249. data/spec/models/enqueue_spec.rb +5 -12
  250. data/spec/models/filter_logs_request_spec.rb +5 -12
  251. data/spec/models/get_digits_spec.rb +5 -12
  252. data/spec/models/get_speech_spec.rb +5 -12
  253. data/spec/models/hangup_spec.rb +5 -12
  254. data/spec/models/incoming_number_list_spec.rb +5 -12
  255. data/spec/models/incoming_number_request_spec.rb +5 -12
  256. data/spec/models/incoming_number_result_spec.rb +11 -12
  257. data/spec/models/log_list_spec.rb +5 -12
  258. data/spec/models/log_result_spec.rb +6 -13
  259. data/spec/models/make_call_request_spec.rb +5 -12
  260. data/spec/models/message_request_spec.rb +5 -12
  261. data/spec/models/message_result_spec.rb +6 -13
  262. data/spec/models/messages_list_spec.rb +5 -12
  263. data/spec/models/mutable_resource_model_spec.rb +5 -12
  264. data/spec/models/out_dial_spec.rb +5 -12
  265. data/spec/models/pagination_model_spec.rb +5 -12
  266. data/spec/models/{enqueue_all_of_spec.rb → park_spec.rb} +11 -24
  267. data/spec/models/pause_spec.rb +5 -12
  268. data/spec/models/percl_command_spec.rb +5 -12
  269. data/spec/models/percl_script_spec.rb +5 -12
  270. data/spec/models/play_early_media_spec.rb +5 -12
  271. data/spec/models/play_spec.rb +5 -12
  272. data/spec/models/queue_list_spec.rb +5 -12
  273. data/spec/models/queue_member_list_spec.rb +5 -12
  274. data/spec/models/queue_member_spec.rb +5 -12
  275. data/spec/models/queue_request_spec.rb +5 -12
  276. data/spec/models/queue_result_spec.rb +5 -12
  277. data/spec/models/record_utterance_spec.rb +5 -12
  278. data/spec/models/recording_list_spec.rb +5 -12
  279. data/spec/models/recording_result_spec.rb +5 -12
  280. data/spec/models/redirect_spec.rb +5 -12
  281. data/spec/models/reject_spec.rb +5 -12
  282. data/spec/models/remove_from_conference_spec.rb +5 -12
  283. data/spec/models/say_spec.rb +5 -12
  284. data/spec/models/send_digits_spec.rb +5 -12
  285. data/spec/models/set_listen_spec.rb +5 -12
  286. data/spec/models/set_talk_spec.rb +5 -12
  287. data/spec/models/sms_spec.rb +5 -12
  288. data/spec/models/start_record_call_spec.rb +5 -12
  289. data/spec/models/terminate_conference_spec.rb +5 -12
  290. data/spec/models/{pause_all_of_spec.rb → unpark_spec.rb} +8 -21
  291. data/spec/models/update_call_request_spec.rb +6 -13
  292. data/spec/models/update_conference_participant_request_spec.rb +5 -12
  293. data/spec/models/update_conference_request_spec.rb +6 -13
  294. data/spec/quickstart_spec.rb +10 -0
  295. data/spec/spec_helper.rb +61 -2
  296. metadata +75 -162
  297. data/lib/freeclimb/utils.rb +0 -34
  298. data/spec/api/web_mocks.rb +0 -473
  299. data/spec/models/account_result_all_of_spec.rb +0 -81
  300. data/spec/models/add_to_conference_all_of_spec.rb +0 -95
  301. data/spec/models/application_list_all_of_spec.rb +0 -41
  302. data/spec/models/application_result_all_of_spec.rb +0 -89
  303. data/spec/models/available_number_list_all_of_spec.rb +0 -41
  304. data/spec/models/call_list_all_of_spec.rb +0 -41
  305. data/spec/models/call_result_all_of_spec.rb +0 -129
  306. data/spec/models/conference_list_all_of_spec.rb +0 -41
  307. data/spec/models/conference_participant_list_all_of_spec.rb +0 -41
  308. data/spec/models/conference_participant_result_all_of_spec.rb +0 -71
  309. data/spec/models/conference_result_all_of_spec.rb +0 -103
  310. data/spec/models/create_conference_all_of_spec.rb +0 -71
  311. data/spec/models/get_digits_all_of_spec.rb +0 -89
  312. data/spec/models/get_speech_all_of_spec.rb +0 -113
  313. data/spec/models/hangup_all_of_spec.rb +0 -41
  314. data/spec/models/incoming_number_list_all_of_spec.rb +0 -41
  315. data/spec/models/incoming_number_result_all_of_spec.rb +0 -89
  316. data/spec/models/log_list_all_of_spec.rb +0 -41
  317. data/spec/models/message_request_all_of_spec.rb +0 -65
  318. data/spec/models/message_result_all_of_spec.rb +0 -87
  319. data/spec/models/messages_list_all_of_spec.rb +0 -41
  320. data/spec/models/out_dial_all_of_spec.rb +0 -95
  321. data/spec/models/play_all_of_spec.rb +0 -59
  322. data/spec/models/play_early_media_all_of_spec.rb +0 -41
  323. data/spec/models/queue_list_all_of_spec.rb +0 -41
  324. data/spec/models/queue_member_list_all_of_spec.rb +0 -41
  325. data/spec/models/queue_result_all_of_spec.rb +0 -77
  326. data/spec/models/record_utterance_all_of_spec.rb +0 -77
  327. data/spec/models/recording_list_all_of_spec.rb +0 -41
  328. data/spec/models/recording_result_all_of_spec.rb +0 -65
  329. data/spec/models/redirect_all_of_spec.rb +0 -41
  330. data/spec/models/reject_all_of_spec.rb +0 -41
  331. data/spec/models/remove_from_conference_all_of_spec.rb +0 -41
  332. data/spec/models/send_digits_all_of_spec.rb +0 -53
  333. data/spec/models/set_listen_all_of_spec.rb +0 -47
  334. data/spec/models/set_talk_all_of_spec.rb +0 -47
  335. data/spec/models/sms_all_of_spec.rb +0 -59
  336. data/spec/models/terminate_conference_all_of_spec.rb +0 -41
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceParticipantList
@@ -51,6 +52,11 @@ module Freeclimb
51
52
  }
52
53
  end
53
54
 
55
+ # Returns all the JSON keys this model knows about
56
+ def self.acceptable_attributes
57
+ attribute_map.values
58
+ end
59
+
54
60
  # Attribute type mapping.
55
61
  def self.openapi_types
56
62
  {
@@ -68,6 +74,14 @@ module Freeclimb
68
74
  # List of attributes with nullable: true
69
75
  def self.openapi_nullable
70
76
  Set.new([
77
+ :'total',
78
+ :'start',
79
+ :'_end',
80
+ :'page',
81
+ :'num_pages',
82
+ :'page_size',
83
+ :'next_page_uri',
84
+ :'participants'
71
85
  ])
72
86
  end
73
87
 
@@ -182,7 +196,9 @@ module Freeclimb
182
196
  def build_from_hash(attributes)
183
197
  return nil unless attributes.is_a?(Hash)
184
198
  self.class.openapi_types.each_pair do |key, type|
185
- if type =~ /\AArray<(.*)>/i
199
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
200
+ self.send("#{key}=", nil)
201
+ elsif type =~ /\AArray<(.*)>/i
186
202
  # check to ensure the input is an array given that the attribute
187
203
  # is documented as an array but the input is not
188
204
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -190,7 +206,7 @@ module Freeclimb
190
206
  end
191
207
  elsif !attributes[self.class.attribute_map[key]].nil?
192
208
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
193
- end # or else data not found in attributes(hash), not an issue as the data can be optional
209
+ end
194
210
  end
195
211
 
196
212
  self
@@ -202,8 +218,8 @@ module Freeclimb
202
218
  # @return [Object] Deserialized data
203
219
  def _deserialize(type, value)
204
220
  case type.to_sym
205
- when :DateTime
206
- DateTime.parse(value)
221
+ when :Time
222
+ Time.parse(value)
207
223
  when :Date
208
224
  Date.parse(value)
209
225
  when :String
@@ -233,7 +249,9 @@ module Freeclimb
233
249
  end
234
250
  end
235
251
  else # model
236
- Freeclimb.const_get(type).build_from_hash(value)
252
+ # models (e.g. Pet) or oneOf
253
+ klass = Freeclimb.const_get(type)
254
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
237
255
  end
238
256
  end
239
257
 
@@ -259,7 +277,7 @@ module Freeclimb
259
277
  is_nullable = self.class.openapi_nullable.include?(attr)
260
278
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
261
279
  end
262
-
280
+
263
281
  hash[param] = _to_hash(value)
264
282
  end
265
283
  hash
@@ -282,5 +300,7 @@ module Freeclimb
282
300
  value
283
301
  end
284
302
  end
303
+
285
304
  end
305
+
286
306
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceParticipantListAllOf
@@ -23,6 +24,11 @@ module Freeclimb
23
24
  }
24
25
  end
25
26
 
27
+ # Returns all the JSON keys this model knows about
28
+ def self.acceptable_attributes
29
+ attribute_map.values
30
+ end
31
+
26
32
  # Attribute type mapping.
27
33
  def self.openapi_types
28
34
  {
@@ -33,6 +39,7 @@ module Freeclimb
33
39
  # List of attributes with nullable: true
34
40
  def self.openapi_nullable
35
41
  Set.new([
42
+ :'participants'
36
43
  ])
37
44
  end
38
45
 
@@ -104,7 +111,9 @@ module Freeclimb
104
111
  def build_from_hash(attributes)
105
112
  return nil unless attributes.is_a?(Hash)
106
113
  self.class.openapi_types.each_pair do |key, type|
107
- 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
108
117
  # check to ensure the input is an array given that the attribute
109
118
  # is documented as an array but the input is not
110
119
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -112,7 +121,7 @@ module Freeclimb
112
121
  end
113
122
  elsif !attributes[self.class.attribute_map[key]].nil?
114
123
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
115
- end # or else data not found in attributes(hash), not an issue as the data can be optional
124
+ end
116
125
  end
117
126
 
118
127
  self
@@ -124,8 +133,8 @@ module Freeclimb
124
133
  # @return [Object] Deserialized data
125
134
  def _deserialize(type, value)
126
135
  case type.to_sym
127
- when :DateTime
128
- DateTime.parse(value)
136
+ when :Time
137
+ Time.parse(value)
129
138
  when :Date
130
139
  Date.parse(value)
131
140
  when :String
@@ -155,7 +164,9 @@ module Freeclimb
155
164
  end
156
165
  end
157
166
  else # model
158
- Freeclimb.const_get(type).build_from_hash(value)
167
+ # models (e.g. Pet) or oneOf
168
+ klass = Freeclimb.const_get(type)
169
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
159
170
  end
160
171
  end
161
172
 
@@ -181,7 +192,7 @@ module Freeclimb
181
192
  is_nullable = self.class.openapi_nullable.include?(attr)
182
193
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
183
194
  end
184
-
195
+
185
196
  hash[param] = _to_hash(value)
186
197
  end
187
198
  hash
@@ -204,5 +215,7 @@ module Freeclimb
204
215
  value
205
216
  end
206
217
  end
218
+
207
219
  end
220
+
208
221
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceParticipantResult
@@ -60,6 +61,11 @@ module Freeclimb
60
61
  }
61
62
  end
62
63
 
64
+ # Returns all the JSON keys this model knows about
65
+ def self.acceptable_attributes
66
+ attribute_map.values
67
+ end
68
+
63
69
  # Attribute type mapping.
64
70
  def self.openapi_types
65
71
  {
@@ -79,6 +85,12 @@ module Freeclimb
79
85
  # List of attributes with nullable: true
80
86
  def self.openapi_nullable
81
87
  Set.new([
88
+ :'account_id',
89
+ :'conference_id',
90
+ :'call_id',
91
+ :'talk',
92
+ :'listen',
93
+ :'start_conf_on_enter'
82
94
  ])
83
95
  end
84
96
 
@@ -201,7 +213,9 @@ module Freeclimb
201
213
  def build_from_hash(attributes)
202
214
  return nil unless attributes.is_a?(Hash)
203
215
  self.class.openapi_types.each_pair do |key, type|
204
- if type =~ /\AArray<(.*)>/i
216
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
217
+ self.send("#{key}=", nil)
218
+ elsif type =~ /\AArray<(.*)>/i
205
219
  # check to ensure the input is an array given that the attribute
206
220
  # is documented as an array but the input is not
207
221
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -209,7 +223,7 @@ module Freeclimb
209
223
  end
210
224
  elsif !attributes[self.class.attribute_map[key]].nil?
211
225
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
212
- end # or else data not found in attributes(hash), not an issue as the data can be optional
226
+ end
213
227
  end
214
228
 
215
229
  self
@@ -221,8 +235,8 @@ module Freeclimb
221
235
  # @return [Object] Deserialized data
222
236
  def _deserialize(type, value)
223
237
  case type.to_sym
224
- when :DateTime
225
- DateTime.parse(value)
238
+ when :Time
239
+ Time.parse(value)
226
240
  when :Date
227
241
  Date.parse(value)
228
242
  when :String
@@ -252,7 +266,9 @@ module Freeclimb
252
266
  end
253
267
  end
254
268
  else # model
255
- Freeclimb.const_get(type).build_from_hash(value)
269
+ # models (e.g. Pet) or oneOf
270
+ klass = Freeclimb.const_get(type)
271
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
256
272
  end
257
273
  end
258
274
 
@@ -278,7 +294,7 @@ module Freeclimb
278
294
  is_nullable = self.class.openapi_nullable.include?(attr)
279
295
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
280
296
  end
281
-
297
+
282
298
  hash[param] = _to_hash(value)
283
299
  end
284
300
  hash
@@ -301,5 +317,7 @@ module Freeclimb
301
317
  value
302
318
  end
303
319
  end
320
+
304
321
  end
322
+
305
323
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceParticipantResultAllOf
@@ -44,6 +45,11 @@ module Freeclimb
44
45
  }
45
46
  end
46
47
 
48
+ # Returns all the JSON keys this model knows about
49
+ def self.acceptable_attributes
50
+ attribute_map.values
51
+ end
52
+
47
53
  # Attribute type mapping.
48
54
  def self.openapi_types
49
55
  {
@@ -59,6 +65,12 @@ module Freeclimb
59
65
  # List of attributes with nullable: true
60
66
  def self.openapi_nullable
61
67
  Set.new([
68
+ :'account_id',
69
+ :'conference_id',
70
+ :'call_id',
71
+ :'talk',
72
+ :'listen',
73
+ :'start_conf_on_enter'
62
74
  ])
63
75
  end
64
76
 
@@ -153,7 +165,9 @@ module Freeclimb
153
165
  def build_from_hash(attributes)
154
166
  return nil unless attributes.is_a?(Hash)
155
167
  self.class.openapi_types.each_pair do |key, type|
156
- if type =~ /\AArray<(.*)>/i
168
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
169
+ self.send("#{key}=", nil)
170
+ elsif type =~ /\AArray<(.*)>/i
157
171
  # check to ensure the input is an array given that the attribute
158
172
  # is documented as an array but the input is not
159
173
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -161,7 +175,7 @@ module Freeclimb
161
175
  end
162
176
  elsif !attributes[self.class.attribute_map[key]].nil?
163
177
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
164
- end # or else data not found in attributes(hash), not an issue as the data can be optional
178
+ end
165
179
  end
166
180
 
167
181
  self
@@ -173,8 +187,8 @@ module Freeclimb
173
187
  # @return [Object] Deserialized data
174
188
  def _deserialize(type, value)
175
189
  case type.to_sym
176
- when :DateTime
177
- DateTime.parse(value)
190
+ when :Time
191
+ Time.parse(value)
178
192
  when :Date
179
193
  Date.parse(value)
180
194
  when :String
@@ -204,7 +218,9 @@ module Freeclimb
204
218
  end
205
219
  end
206
220
  else # model
207
- Freeclimb.const_get(type).build_from_hash(value)
221
+ # models (e.g. Pet) or oneOf
222
+ klass = Freeclimb.const_get(type)
223
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
208
224
  end
209
225
  end
210
226
 
@@ -230,7 +246,7 @@ module Freeclimb
230
246
  is_nullable = self.class.openapi_nullable.include?(attr)
231
247
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
232
248
  end
233
-
249
+
234
250
  hash[param] = _to_hash(value)
235
251
  end
236
252
  hash
@@ -253,5 +269,7 @@ module Freeclimb
253
269
  value
254
270
  end
255
271
  end
272
+
256
273
  end
274
+
257
275
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceResult
@@ -98,6 +99,11 @@ module Freeclimb
98
99
  }
99
100
  end
100
101
 
102
+ # Returns all the JSON keys this model knows about
103
+ def self.acceptable_attributes
104
+ attribute_map.values
105
+ end
106
+
101
107
  # Attribute type mapping.
102
108
  def self.openapi_types
103
109
  {
@@ -121,6 +127,16 @@ module Freeclimb
121
127
  # List of attributes with nullable: true
122
128
  def self.openapi_nullable
123
129
  Set.new([
130
+ :'conference_id',
131
+ :'account_id',
132
+ :'_alias',
133
+ :'play_beep',
134
+ :'record',
135
+ :'status',
136
+ :'wait_url',
137
+ :'action_url',
138
+ :'status_callback_url',
139
+ :'subresource_uris'
124
140
  ])
125
141
  end
126
142
 
@@ -287,7 +303,9 @@ module Freeclimb
287
303
  def build_from_hash(attributes)
288
304
  return nil unless attributes.is_a?(Hash)
289
305
  self.class.openapi_types.each_pair do |key, type|
290
- if type =~ /\AArray<(.*)>/i
306
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
307
+ self.send("#{key}=", nil)
308
+ elsif type =~ /\AArray<(.*)>/i
291
309
  # check to ensure the input is an array given that the attribute
292
310
  # is documented as an array but the input is not
293
311
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -295,7 +313,7 @@ module Freeclimb
295
313
  end
296
314
  elsif !attributes[self.class.attribute_map[key]].nil?
297
315
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
298
- end # or else data not found in attributes(hash), not an issue as the data can be optional
316
+ end
299
317
  end
300
318
 
301
319
  self
@@ -307,8 +325,8 @@ module Freeclimb
307
325
  # @return [Object] Deserialized data
308
326
  def _deserialize(type, value)
309
327
  case type.to_sym
310
- when :DateTime
311
- DateTime.parse(value)
328
+ when :Time
329
+ Time.parse(value)
312
330
  when :Date
313
331
  Date.parse(value)
314
332
  when :String
@@ -338,7 +356,9 @@ module Freeclimb
338
356
  end
339
357
  end
340
358
  else # model
341
- Freeclimb.const_get(type).build_from_hash(value)
359
+ # models (e.g. Pet) or oneOf
360
+ klass = Freeclimb.const_get(type)
361
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
342
362
  end
343
363
  end
344
364
 
@@ -364,7 +384,7 @@ module Freeclimb
364
384
  is_nullable = self.class.openapi_nullable.include?(attr)
365
385
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
366
386
  end
367
-
387
+
368
388
  hash[param] = _to_hash(value)
369
389
  end
370
390
  hash
@@ -387,5 +407,7 @@ module Freeclimb
387
407
  value
388
408
  end
389
409
  end
410
+
390
411
  end
412
+
391
413
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  class ConferenceResultAllOf
@@ -82,6 +83,11 @@ module Freeclimb
82
83
  }
83
84
  end
84
85
 
86
+ # Returns all the JSON keys this model knows about
87
+ def self.acceptable_attributes
88
+ attribute_map.values
89
+ end
90
+
85
91
  # Attribute type mapping.
86
92
  def self.openapi_types
87
93
  {
@@ -101,6 +107,16 @@ module Freeclimb
101
107
  # List of attributes with nullable: true
102
108
  def self.openapi_nullable
103
109
  Set.new([
110
+ :'conference_id',
111
+ :'account_id',
112
+ :'_alias',
113
+ :'play_beep',
114
+ :'record',
115
+ :'status',
116
+ :'wait_url',
117
+ :'action_url',
118
+ :'status_callback_url',
119
+ :'subresource_uris'
104
120
  ])
105
121
  end
106
122
 
@@ -239,7 +255,9 @@ module Freeclimb
239
255
  def build_from_hash(attributes)
240
256
  return nil unless attributes.is_a?(Hash)
241
257
  self.class.openapi_types.each_pair do |key, type|
242
- if type =~ /\AArray<(.*)>/i
258
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
259
+ self.send("#{key}=", nil)
260
+ elsif type =~ /\AArray<(.*)>/i
243
261
  # check to ensure the input is an array given that the attribute
244
262
  # is documented as an array but the input is not
245
263
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -247,7 +265,7 @@ module Freeclimb
247
265
  end
248
266
  elsif !attributes[self.class.attribute_map[key]].nil?
249
267
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
250
- end # or else data not found in attributes(hash), not an issue as the data can be optional
268
+ end
251
269
  end
252
270
 
253
271
  self
@@ -259,8 +277,8 @@ module Freeclimb
259
277
  # @return [Object] Deserialized data
260
278
  def _deserialize(type, value)
261
279
  case type.to_sym
262
- when :DateTime
263
- DateTime.parse(value)
280
+ when :Time
281
+ Time.parse(value)
264
282
  when :Date
265
283
  Date.parse(value)
266
284
  when :String
@@ -290,7 +308,9 @@ module Freeclimb
290
308
  end
291
309
  end
292
310
  else # model
293
- Freeclimb.const_get(type).build_from_hash(value)
311
+ # models (e.g. Pet) or oneOf
312
+ klass = Freeclimb.const_get(type)
313
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
294
314
  end
295
315
  end
296
316
 
@@ -316,7 +336,7 @@ module Freeclimb
316
336
  is_nullable = self.class.openapi_nullable.include?(attr)
317
337
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
318
338
  end
319
-
339
+
320
340
  hash[param] = _to_hash(value)
321
341
  end
322
342
  hash
@@ -339,5 +359,7 @@ module Freeclimb
339
359
  value
340
360
  end
341
361
  end
362
+
342
363
  end
364
+
343
365
  end
@@ -4,13 +4,14 @@
4
4
  #FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
-
7
+ Contact: support@freeclimb.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.3.0-SNAPSHOT
9
+ OpenAPI Generator version: 5.4.0
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
+ require 'time'
14
15
 
15
16
  module Freeclimb
16
17
  # The `CreateConference` command does exactly what its name implies — it creates an unpopulated Conference (one without any Participants). Once created, a Conference remains in FreeClimb until explicitly terminated by a customer. Once a Conference has been terminated, it can no longer be used.
@@ -45,6 +46,11 @@ module Freeclimb
45
46
  }
46
47
  end
47
48
 
49
+ # Returns all the JSON keys this model knows about, including the ones defined in its parent(s)
50
+ def self.acceptable_attributes
51
+ attribute_map.values.concat(superclass.acceptable_attributes)
52
+ end
53
+
48
54
  # Attribute type mapping.
49
55
  def self.openapi_types
50
56
  {
@@ -112,6 +118,7 @@ module Freeclimb
112
118
  if attributes.key?(:'wait_url')
113
119
  self.wait_url = attributes[:'wait_url']
114
120
  end
121
+ self.command = "CreateConference"
115
122
  end
116
123
 
117
124
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -171,7 +178,9 @@ module Freeclimb
171
178
  return nil unless attributes.is_a?(Hash)
172
179
  super(attributes)
173
180
  self.class.openapi_types.each_pair do |key, type|
174
- if type =~ /\AArray<(.*)>/i
181
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
182
+ self.send("#{key}=", nil)
183
+ elsif type =~ /\AArray<(.*)>/i
175
184
  # check to ensure the input is an array given that the attribute
176
185
  # is documented as an array but the input is not
177
186
  if attributes[self.class.attribute_map[key]].is_a?(Array)
@@ -179,7 +188,7 @@ module Freeclimb
179
188
  end
180
189
  elsif !attributes[self.class.attribute_map[key]].nil?
181
190
  self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
182
- end # or else data not found in attributes(hash), not an issue as the data can be optional
191
+ end
183
192
  end
184
193
 
185
194
  self
@@ -191,8 +200,8 @@ module Freeclimb
191
200
  # @return [Object] Deserialized data
192
201
  def _deserialize(type, value)
193
202
  case type.to_sym
194
- when :DateTime
195
- DateTime.parse(value)
203
+ when :Time
204
+ Time.parse(value)
196
205
  when :Date
197
206
  Date.parse(value)
198
207
  when :String
@@ -222,7 +231,9 @@ module Freeclimb
222
231
  end
223
232
  end
224
233
  else # model
225
- Freeclimb.const_get(type).build_from_hash(value)
234
+ # models (e.g. Pet) or oneOf
235
+ klass = Freeclimb.const_get(type)
236
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
226
237
  end
227
238
  end
228
239
 
@@ -248,7 +259,7 @@ module Freeclimb
248
259
  is_nullable = self.class.openapi_nullable.include?(attr)
249
260
  next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
250
261
  end
251
-
262
+
252
263
  hash[param] = _to_hash(value)
253
264
  end
254
265
  hash
@@ -271,5 +282,7 @@ module Freeclimb
271
282
  value
272
283
  end
273
284
  end
285
+
274
286
  end
287
+
275
288
  end