apimatic-bcd-travel-sdk 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +180 -0
  4. data/bin/console +15 -0
  5. data/lib/bcd_travel_api/api_helper.rb +10 -0
  6. data/lib/bcd_travel_api/apis/air_api.rb +138 -0
  7. data/lib/bcd_travel_api/apis/air_availability_return_flight_api.rb +31 -0
  8. data/lib/bcd_travel_api/apis/air_fare_search_optional_services_api.rb +31 -0
  9. data/lib/bcd_travel_api/apis/air_fare_search_select_seat_api.rb +53 -0
  10. data/lib/bcd_travel_api/apis/air_fare_search_simple_api.rb +195 -0
  11. data/lib/bcd_travel_api/apis/base_api.rb +67 -0
  12. data/lib/bcd_travel_api/apis/cars_api.rb +563 -0
  13. data/lib/bcd_travel_api/apis/hotels_api.rb +930 -0
  14. data/lib/bcd_travel_api/apis/retrieve_versions_api.rb +32 -0
  15. data/lib/bcd_travel_api/apis/search_expenses_api.rb +88 -0
  16. data/lib/bcd_travel_api/apis/v20_api.rb +72 -0
  17. data/lib/bcd_travel_api/apis/v21_api.rb +535 -0
  18. data/lib/bcd_travel_api/client.rb +136 -0
  19. data/lib/bcd_travel_api/configuration.rb +205 -0
  20. data/lib/bcd_travel_api/exceptions/api_exception.rb +21 -0
  21. data/lib/bcd_travel_api/http/api_response.rb +19 -0
  22. data/lib/bcd_travel_api/http/auth/basic.rb +62 -0
  23. data/lib/bcd_travel_api/http/auth/bearer.rb +53 -0
  24. data/lib/bcd_travel_api/http/http_call_back.rb +10 -0
  25. data/lib/bcd_travel_api/http/http_method_enum.rb +10 -0
  26. data/lib/bcd_travel_api/http/http_request.rb +10 -0
  27. data/lib/bcd_travel_api/http/http_response.rb +10 -0
  28. data/lib/bcd_travel_api/http/proxy_settings.rb +22 -0
  29. data/lib/bcd_travel_api/logging/configuration/api_logging_configuration.rb +186 -0
  30. data/lib/bcd_travel_api/logging/sdk_logger.rb +17 -0
  31. data/lib/bcd_travel_api/models/address.rb +74 -0
  32. data/lib/bcd_travel_api/models/address1.rb +111 -0
  33. data/lib/bcd_travel_api/models/address3.rb +109 -0
  34. data/lib/bcd_travel_api/models/address32.rb +75 -0
  35. data/lib/bcd_travel_api/models/address33.rb +103 -0
  36. data/lib/bcd_travel_api/models/address5.rb +100 -0
  37. data/lib/bcd_travel_api/models/air.rb +108 -0
  38. data/lib/bcd_travel_api/models/air1.rb +108 -0
  39. data/lib/bcd_travel_api/models/air16.rb +100 -0
  40. data/lib/bcd_travel_api/models/air2.rb +108 -0
  41. data/lib/bcd_travel_api/models/airavailabilityrequest.rb +164 -0
  42. data/lib/bcd_travel_api/models/airbookrequest.rb +350 -0
  43. data/lib/bcd_travel_api/models/aircancel_reservation_request4.rb +161 -0
  44. data/lib/bcd_travel_api/models/aircancel_reservationrefundquoteconfirmrequest.rb +164 -0
  45. data/lib/bcd_travel_api/models/aircomplete_verification_request.rb +146 -0
  46. data/lib/bcd_travel_api/models/airdocuments_issue_request.rb +163 -0
  47. data/lib/bcd_travel_api/models/airfare_rules_request.rb +155 -0
  48. data/lib/bcd_travel_api/models/airfare_search_request.rb +243 -0
  49. data/lib/bcd_travel_api/models/airget_checkout_data_request.rb +177 -0
  50. data/lib/bcd_travel_api/models/airpricingavailabilityrequest.rb +222 -0
  51. data/lib/bcd_travel_api/models/airpricingavailabilityrequest1.rb +231 -0
  52. data/lib/bcd_travel_api/models/airpricingfare_searchrequest.rb +214 -0
  53. data/lib/bcd_travel_api/models/airretrieve_reservations_list_request.rb +172 -0
  54. data/lib/bcd_travel_api/models/airseat_map_request.rb +175 -0
  55. data/lib/bcd_travel_api/models/arrival_location.rb +82 -0
  56. data/lib/bcd_travel_api/models/base_fare.rb +91 -0
  57. data/lib/bcd_travel_api/models/base_fare1.rb +119 -0
  58. data/lib/bcd_travel_api/models/base_fare2.rb +91 -0
  59. data/lib/bcd_travel_api/models/base_model.rb +110 -0
  60. data/lib/bcd_travel_api/models/billing_address.rb +110 -0
  61. data/lib/bcd_travel_api/models/booking_data.rb +73 -0
  62. data/lib/bcd_travel_api/models/broker.rb +82 -0
  63. data/lib/bcd_travel_api/models/broker16.rb +82 -0
  64. data/lib/bcd_travel_api/models/car.rb +91 -0
  65. data/lib/bcd_travel_api/models/car1.rb +91 -0
  66. data/lib/bcd_travel_api/models/car16.rb +83 -0
  67. data/lib/bcd_travel_api/models/car2.rb +91 -0
  68. data/lib/bcd_travel_api/models/card_detail.rb +104 -0
  69. data/lib/bcd_travel_api/models/carsbookcardrequest.rb +310 -0
  70. data/lib/bcd_travel_api/models/carsbookguaranteerequest.rb +236 -0
  71. data/lib/bcd_travel_api/models/carsbookvoucherrequest.rb +266 -0
  72. data/lib/bcd_travel_api/models/carscancel_reservation_request1.rb +163 -0
  73. data/lib/bcd_travel_api/models/carsdirect_sell_bookcardrequest.rb +362 -0
  74. data/lib/bcd_travel_api/models/carsdirect_sell_bookno_paymentrequest.rb +307 -0
  75. data/lib/bcd_travel_api/models/carsmodify_reservation_request.rb +215 -0
  76. data/lib/bcd_travel_api/models/carsretrieve_reservations_list_request.rb +172 -0
  77. data/lib/bcd_travel_api/models/client_reportable_datum.rb +82 -0
  78. data/lib/bcd_travel_api/models/content_type.rb +26 -0
  79. data/lib/bcd_travel_api/models/cruise_ferry.rb +91 -0
  80. data/lib/bcd_travel_api/models/departure_location.rb +82 -0
  81. data/lib/bcd_travel_api/models/document.rb +150 -0
  82. data/lib/bcd_travel_api/models/drop_off_location.rb +122 -0
  83. data/lib/bcd_travel_api/models/drop_off_location1.rb +118 -0
  84. data/lib/bcd_travel_api/models/drop_off_location16.rb +83 -0
  85. data/lib/bcd_travel_api/models/drop_off_location2.rb +82 -0
  86. data/lib/bcd_travel_api/models/end_location_address.rb +109 -0
  87. data/lib/bcd_travel_api/models/fare.rb +117 -0
  88. data/lib/bcd_travel_api/models/fare2.rb +119 -0
  89. data/lib/bcd_travel_api/models/fare3.rb +119 -0
  90. data/lib/bcd_travel_api/models/fare5.rb +91 -0
  91. data/lib/bcd_travel_api/models/ff_number.rb +82 -0
  92. data/lib/bcd_travel_api/models/filter.rb +185 -0
  93. data/lib/bcd_travel_api/models/filter1.rb +74 -0
  94. data/lib/bcd_travel_api/models/filter10.rb +74 -0
  95. data/lib/bcd_travel_api/models/filter11.rb +75 -0
  96. data/lib/bcd_travel_api/models/filter12.rb +75 -0
  97. data/lib/bcd_travel_api/models/filter13.rb +74 -0
  98. data/lib/bcd_travel_api/models/filter14.rb +75 -0
  99. data/lib/bcd_travel_api/models/filter15.rb +75 -0
  100. data/lib/bcd_travel_api/models/filter2.rb +74 -0
  101. data/lib/bcd_travel_api/models/filter3.rb +74 -0
  102. data/lib/bcd_travel_api/models/filter4.rb +75 -0
  103. data/lib/bcd_travel_api/models/filter6.rb +75 -0
  104. data/lib/bcd_travel_api/models/filter8.rb +75 -0
  105. data/lib/bcd_travel_api/models/generate_oauth_20_token.rb +91 -0
  106. data/lib/bcd_travel_api/models/get_configurations_post_request.rb +193 -0
  107. data/lib/bcd_travel_api/models/get_versionsbytrip_id.rb +99 -0
  108. data/lib/bcd_travel_api/models/guest.rb +82 -0
  109. data/lib/bcd_travel_api/models/hotel.rb +91 -0
  110. data/lib/bcd_travel_api/models/hotel1.rb +91 -0
  111. data/lib/bcd_travel_api/models/hotel16.rb +83 -0
  112. data/lib/bcd_travel_api/models/hotel2.rb +91 -0
  113. data/lib/bcd_travel_api/models/hotelsbookrequest.rb +418 -0
  114. data/lib/bcd_travel_api/models/hotelsbookrequest1.rb +445 -0
  115. data/lib/bcd_travel_api/models/hotelscancel_reservation_request.rb +153 -0
  116. data/lib/bcd_travel_api/models/hotelsrebookrequest.rb +214 -0
  117. data/lib/bcd_travel_api/models/hotelsrebookrequest1.rb +231 -0
  118. data/lib/bcd_travel_api/models/hotelsupdate_reservation_details_request.rb +153 -0
  119. data/lib/bcd_travel_api/models/hotelsupdate_reservation_details_request1.rb +164 -0
  120. data/lib/bcd_travel_api/models/leg.rb +166 -0
  121. data/lib/bcd_travel_api/models/leg1.rb +168 -0
  122. data/lib/bcd_travel_api/models/leg2.rb +156 -0
  123. data/lib/bcd_travel_api/models/leg3.rb +160 -0
  124. data/lib/bcd_travel_api/models/leg33.rb +164 -0
  125. data/lib/bcd_travel_api/models/leg34.rb +143 -0
  126. data/lib/bcd_travel_api/models/leg4.rb +154 -0
  127. data/lib/bcd_travel_api/models/leg6.rb +143 -0
  128. data/lib/bcd_travel_api/models/line_item.rb +109 -0
  129. data/lib/bcd_travel_api/models/line_item1.rb +119 -0
  130. data/lib/bcd_travel_api/models/location.rb +73 -0
  131. data/lib/bcd_travel_api/models/location16.rb +73 -0
  132. data/lib/bcd_travel_api/models/misc.rb +91 -0
  133. data/lib/bcd_travel_api/models/misc10.rb +83 -0
  134. data/lib/bcd_travel_api/models/options.rb +84 -0
  135. data/lib/bcd_travel_api/models/origin_destination.rb +134 -0
  136. data/lib/bcd_travel_api/models/origin_destination1.rb +108 -0
  137. data/lib/bcd_travel_api/models/passenger.rb +104 -0
  138. data/lib/bcd_travel_api/models/passport.rb +102 -0
  139. data/lib/bcd_travel_api/models/payment.rb +137 -0
  140. data/lib/bcd_travel_api/models/payment1.rb +141 -0
  141. data/lib/bcd_travel_api/models/payment2.rb +121 -0
  142. data/lib/bcd_travel_api/models/payment3.rb +111 -0
  143. data/lib/bcd_travel_api/models/pickup_location.rb +122 -0
  144. data/lib/bcd_travel_api/models/pickup_location1.rb +118 -0
  145. data/lib/bcd_travel_api/models/pickup_location16.rb +83 -0
  146. data/lib/bcd_travel_api/models/pickup_location2.rb +82 -0
  147. data/lib/bcd_travel_api/models/ping_getresponse.rb +72 -0
  148. data/lib/bcd_travel_api/models/pingrequest.rb +126 -0
  149. data/lib/bcd_travel_api/models/pingrequest2.rb +146 -0
  150. data/lib/bcd_travel_api/models/products.rb +129 -0
  151. data/lib/bcd_travel_api/models/products1.rb +117 -0
  152. data/lib/bcd_travel_api/models/products16.rb +111 -0
  153. data/lib/bcd_travel_api/models/products2.rb +107 -0
  154. data/lib/bcd_travel_api/models/rail.rb +91 -0
  155. data/lib/bcd_travel_api/models/rail1.rb +91 -0
  156. data/lib/bcd_travel_api/models/rail16.rb +82 -0
  157. data/lib/bcd_travel_api/models/rail2.rb +91 -0
  158. data/lib/bcd_travel_api/models/reservation.rb +223 -0
  159. data/lib/bcd_travel_api/models/reservation1.rb +239 -0
  160. data/lib/bcd_travel_api/models/reservation2.rb +170 -0
  161. data/lib/bcd_travel_api/models/reservation3.rb +193 -0
  162. data/lib/bcd_travel_api/models/reservation4.rb +201 -0
  163. data/lib/bcd_travel_api/models/reservation56.rb +220 -0
  164. data/lib/bcd_travel_api/models/reservation57.rb +219 -0
  165. data/lib/bcd_travel_api/models/reservation6.rb +240 -0
  166. data/lib/bcd_travel_api/models/reservation8.rb +220 -0
  167. data/lib/bcd_travel_api/models/reservation9.rb +239 -0
  168. data/lib/bcd_travel_api/models/result.rb +299 -0
  169. data/lib/bcd_travel_api/models/result1.rb +267 -0
  170. data/lib/bcd_travel_api/models/result16.rb +295 -0
  171. data/lib/bcd_travel_api/models/result2.rb +295 -0
  172. data/lib/bcd_travel_api/models/search_expenses.rb +111 -0
  173. data/lib/bcd_travel_api/models/search_expenses_request.rb +99 -0
  174. data/lib/bcd_travel_api/models/search_expensesbyaccount_id.rb +111 -0
  175. data/lib/bcd_travel_api/models/search_expensesbyaccount_id_request.rb +90 -0
  176. data/lib/bcd_travel_api/models/search_expensesbybooking_date_time.rb +111 -0
  177. data/lib/bcd_travel_api/models/search_expensesbybooking_date_time_request.rb +90 -0
  178. data/lib/bcd_travel_api/models/search_expensesbybooking_date_timerange.rb +111 -0
  179. data/lib/bcd_travel_api/models/search_expensesbybooking_date_timerange_request.rb +90 -0
  180. data/lib/bcd_travel_api/models/search_expensesbycalculated_ticket_status.rb +111 -0
  181. data/lib/bcd_travel_api/models/search_expensesbycalculated_ticket_status_request.rb +90 -0
  182. data/lib/bcd_travel_api/models/search_expensesbycustomer_number.rb +111 -0
  183. data/lib/bcd_travel_api/models/search_expensesbycustomer_number_request.rb +90 -0
  184. data/lib/bcd_travel_api/models/search_expensesbyglobal_customer_number.rb +111 -0
  185. data/lib/bcd_travel_api/models/search_expensesbyglobal_customer_number_request.rb +90 -0
  186. data/lib/bcd_travel_api/models/search_expensesbyhas_transaction.rb +111 -0
  187. data/lib/bcd_travel_api/models/search_expensesbyhas_transaction_request.rb +90 -0
  188. data/lib/bcd_travel_api/models/search_expensesbyinvoice_date_time.rb +111 -0
  189. data/lib/bcd_travel_api/models/search_expensesbyinvoice_date_time_request.rb +90 -0
  190. data/lib/bcd_travel_api/models/search_expensesbyinvoice_date_timerange.rb +111 -0
  191. data/lib/bcd_travel_api/models/search_expensesbyinvoice_date_timerange_request.rb +90 -0
  192. data/lib/bcd_travel_api/models/search_expensesbyinvoice_number.rb +111 -0
  193. data/lib/bcd_travel_api/models/search_expensesbyinvoice_number_request.rb +90 -0
  194. data/lib/bcd_travel_api/models/search_expensesbylast_modified_date_time.rb +111 -0
  195. data/lib/bcd_travel_api/models/search_expensesbylast_modified_date_time_request.rb +90 -0
  196. data/lib/bcd_travel_api/models/search_expensesbylast_modified_date_timerange.rb +111 -0
  197. data/lib/bcd_travel_api/models/search_expensesbylast_modified_date_timerange_request.rb +90 -0
  198. data/lib/bcd_travel_api/models/search_expensesbyrecord_locator.rb +111 -0
  199. data/lib/bcd_travel_api/models/search_expensesbyrecord_locator_request.rb +90 -0
  200. data/lib/bcd_travel_api/models/search_expensesbyticket_status.rb +111 -0
  201. data/lib/bcd_travel_api/models/search_expensesbyticket_status_request.rb +90 -0
  202. data/lib/bcd_travel_api/models/search_expensesbytraveler_email.rb +111 -0
  203. data/lib/bcd_travel_api/models/search_expensesbytraveler_email_request.rb +90 -0
  204. data/lib/bcd_travel_api/models/segment_option.rb +85 -0
  205. data/lib/bcd_travel_api/models/seller.rb +83 -0
  206. data/lib/bcd_travel_api/models/seller16.rb +72 -0
  207. data/lib/bcd_travel_api/models/sort.rb +86 -0
  208. data/lib/bcd_travel_api/models/specific_flight.rb +82 -0
  209. data/lib/bcd_travel_api/models/start_location_address.rb +109 -0
  210. data/lib/bcd_travel_api/models/taxis.rb +145 -0
  211. data/lib/bcd_travel_api/models/taxis1.rb +132 -0
  212. data/lib/bcd_travel_api/models/taxis3.rb +143 -0
  213. data/lib/bcd_travel_api/models/taxis4.rb +130 -0
  214. data/lib/bcd_travel_api/models/ticket.rb +334 -0
  215. data/lib/bcd_travel_api/models/ticket1.rb +156 -0
  216. data/lib/bcd_travel_api/models/ticket2.rb +244 -0
  217. data/lib/bcd_travel_api/models/ticket3.rb +156 -0
  218. data/lib/bcd_travel_api/models/ticket32.rb +337 -0
  219. data/lib/bcd_travel_api/models/ticket33.rb +156 -0
  220. data/lib/bcd_travel_api/models/ticket4.rb +337 -0
  221. data/lib/bcd_travel_api/models/ticket5.rb +156 -0
  222. data/lib/bcd_travel_api/models/time_restriction.rb +90 -0
  223. data/lib/bcd_travel_api/models/tour.rb +91 -0
  224. data/lib/bcd_travel_api/models/traveler.rb +91 -0
  225. data/lib/bcd_travel_api/models/traveler1.rb +110 -0
  226. data/lib/bcd_travel_api/models/traveler3.rb +91 -0
  227. data/lib/bcd_travel_api/models/traveler4.rb +120 -0
  228. data/lib/bcd_travel_api/models/traveler_name.rb +82 -0
  229. data/lib/bcd_travel_api/utilities/date_time_helper.rb +11 -0
  230. data/lib/bcd_travel_api/utilities/file_wrapper.rb +28 -0
  231. data/lib/bcd_travel_api/utilities/union_type_lookup.rb +128 -0
  232. data/lib/bcd_travel_api.rb +270 -0
  233. metadata +316 -0
@@ -0,0 +1,160 @@
1
+ # bcd_travel_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module BcdTravelApi
7
+ # Leg3 Model.
8
+ class Leg3 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :departure_airport_code
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :departure_date_time
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :arrival_airport_code
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :arrival_date_time
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :flight_number
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [Integer]
34
+ attr_accessor :segment_number
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :marketing_airline_code
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [String]
42
+ attr_accessor :class_of_service_code
43
+
44
+ # TODO: Write general description for this method
45
+ # @return [String]
46
+ attr_accessor :fare_basis_code
47
+
48
+ # A mapping from model property names to API property names.
49
+ def self.names
50
+ @_hash = {} if @_hash.nil?
51
+ @_hash['departure_airport_code'] = 'departureAirportCode'
52
+ @_hash['departure_date_time'] = 'departureDateTime'
53
+ @_hash['arrival_airport_code'] = 'arrivalAirportCode'
54
+ @_hash['arrival_date_time'] = 'arrivalDateTime'
55
+ @_hash['flight_number'] = 'flightNumber'
56
+ @_hash['segment_number'] = 'segmentNumber'
57
+ @_hash['marketing_airline_code'] = 'marketingAirlineCode'
58
+ @_hash['class_of_service_code'] = 'classOfServiceCode'
59
+ @_hash['fare_basis_code'] = 'fareBasisCode'
60
+ @_hash
61
+ end
62
+
63
+ # An array for optional fields
64
+ def self.optionals
65
+ %w[
66
+ departure_date_time
67
+ arrival_date_time
68
+ ]
69
+ end
70
+
71
+ # An array for nullable fields
72
+ def self.nullables
73
+ []
74
+ end
75
+
76
+ def initialize(departure_airport_code:, arrival_airport_code:,
77
+ flight_number:, segment_number:, marketing_airline_code:,
78
+ class_of_service_code:, fare_basis_code:,
79
+ departure_date_time: SKIP, arrival_date_time: SKIP,
80
+ additional_properties: nil)
81
+ # Add additional model properties to the instance
82
+ additional_properties = {} if additional_properties.nil?
83
+
84
+ @departure_airport_code = departure_airport_code
85
+ @departure_date_time = departure_date_time unless departure_date_time == SKIP
86
+ @arrival_airport_code = arrival_airport_code
87
+ @arrival_date_time = arrival_date_time unless arrival_date_time == SKIP
88
+ @flight_number = flight_number
89
+ @segment_number = segment_number
90
+ @marketing_airline_code = marketing_airline_code
91
+ @class_of_service_code = class_of_service_code
92
+ @fare_basis_code = fare_basis_code
93
+ @additional_properties = additional_properties
94
+ end
95
+
96
+ # Creates an instance of the object from a hash.
97
+ def self.from_hash(hash)
98
+ return nil unless hash
99
+
100
+ # Extract variables from the hash.
101
+ departure_airport_code =
102
+ hash.key?('departureAirportCode') ? hash['departureAirportCode'] : nil
103
+ arrival_airport_code =
104
+ hash.key?('arrivalAirportCode') ? hash['arrivalAirportCode'] : nil
105
+ flight_number = hash.key?('flightNumber') ? hash['flightNumber'] : nil
106
+ segment_number = hash.key?('segmentNumber') ? hash['segmentNumber'] : nil
107
+ marketing_airline_code =
108
+ hash.key?('marketingAirlineCode') ? hash['marketingAirlineCode'] : nil
109
+ class_of_service_code =
110
+ hash.key?('classOfServiceCode') ? hash['classOfServiceCode'] : nil
111
+ fare_basis_code = hash.key?('fareBasisCode') ? hash['fareBasisCode'] : nil
112
+ departure_date_time =
113
+ hash.key?('departureDateTime') ? hash['departureDateTime'] : SKIP
114
+ arrival_date_time =
115
+ hash.key?('arrivalDateTime') ? hash['arrivalDateTime'] : SKIP
116
+
117
+ # Create a new hash for additional properties, removing known properties.
118
+ new_hash = hash.reject { |k, _| names.value?(k) }
119
+
120
+ additional_properties = APIHelper.get_additional_properties(
121
+ new_hash, proc { |value| value }
122
+ )
123
+
124
+ # Create object from extracted values.
125
+ Leg3.new(departure_airport_code: departure_airport_code,
126
+ arrival_airport_code: arrival_airport_code,
127
+ flight_number: flight_number,
128
+ segment_number: segment_number,
129
+ marketing_airline_code: marketing_airline_code,
130
+ class_of_service_code: class_of_service_code,
131
+ fare_basis_code: fare_basis_code,
132
+ departure_date_time: departure_date_time,
133
+ arrival_date_time: arrival_date_time,
134
+ additional_properties: additional_properties)
135
+ end
136
+
137
+ # Provides a human-readable string representation of the object.
138
+ def to_s
139
+ class_name = self.class.name.split('::').last
140
+ "<#{class_name} departure_airport_code: #{@departure_airport_code}, departure_date_time:"\
141
+ " #{@departure_date_time}, arrival_airport_code: #{@arrival_airport_code},"\
142
+ " arrival_date_time: #{@arrival_date_time}, flight_number: #{@flight_number},"\
143
+ " segment_number: #{@segment_number}, marketing_airline_code: #{@marketing_airline_code},"\
144
+ " class_of_service_code: #{@class_of_service_code}, fare_basis_code: #{@fare_basis_code},"\
145
+ " additional_properties: #{@additional_properties}>"
146
+ end
147
+
148
+ # Provides a debugging-friendly string with detailed object information.
149
+ def inspect
150
+ class_name = self.class.name.split('::').last
151
+ "<#{class_name} departure_airport_code: #{@departure_airport_code.inspect},"\
152
+ " departure_date_time: #{@departure_date_time.inspect}, arrival_airport_code:"\
153
+ " #{@arrival_airport_code.inspect}, arrival_date_time: #{@arrival_date_time.inspect},"\
154
+ " flight_number: #{@flight_number.inspect}, segment_number: #{@segment_number.inspect},"\
155
+ " marketing_airline_code: #{@marketing_airline_code.inspect}, class_of_service_code:"\
156
+ " #{@class_of_service_code.inspect}, fare_basis_code: #{@fare_basis_code.inspect},"\
157
+ " additional_properties: #{@additional_properties}>"
158
+ end
159
+ end
160
+ end
@@ -0,0 +1,164 @@
1
+ # bcd_travel_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module BcdTravelApi
7
+ # Leg33 Model.
8
+ class Leg33 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :departure_airport_code
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :arrival_airport_code
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :flight_number
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [Integer]
26
+ attr_accessor :segment_number
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :class_of_service_code
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [String]
34
+ attr_accessor :fare_basis_code
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :departure_date
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [String]
42
+ attr_accessor :arrival_date
43
+
44
+ # A mapping from model property names to API property names.
45
+ def self.names
46
+ @_hash = {} if @_hash.nil?
47
+ @_hash['departure_airport_code'] = 'departureAirportCode'
48
+ @_hash['arrival_airport_code'] = 'arrivalAirportCode'
49
+ @_hash['flight_number'] = 'flightNumber'
50
+ @_hash['segment_number'] = 'segmentNumber'
51
+ @_hash['class_of_service_code'] = 'classOfServiceCode'
52
+ @_hash['fare_basis_code'] = 'fareBasisCode'
53
+ @_hash['departure_date'] = 'departureDate'
54
+ @_hash['arrival_date'] = 'arrivalDate'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ %w[
61
+ departure_airport_code
62
+ arrival_airport_code
63
+ flight_number
64
+ segment_number
65
+ class_of_service_code
66
+ fare_basis_code
67
+ departure_date
68
+ arrival_date
69
+ ]
70
+ end
71
+
72
+ # An array for nullable fields
73
+ def self.nullables
74
+ []
75
+ end
76
+
77
+ def initialize(departure_airport_code: SKIP, arrival_airport_code: SKIP,
78
+ flight_number: SKIP, segment_number: SKIP,
79
+ class_of_service_code: SKIP, fare_basis_code: SKIP,
80
+ departure_date: SKIP, arrival_date: SKIP,
81
+ additional_properties: nil)
82
+ # Add additional model properties to the instance
83
+ additional_properties = {} if additional_properties.nil?
84
+
85
+ @departure_airport_code = departure_airport_code unless departure_airport_code == SKIP
86
+ @arrival_airport_code = arrival_airport_code unless arrival_airport_code == SKIP
87
+ @flight_number = flight_number unless flight_number == SKIP
88
+ @segment_number = segment_number unless segment_number == SKIP
89
+ @class_of_service_code = class_of_service_code unless class_of_service_code == SKIP
90
+ @fare_basis_code = fare_basis_code unless fare_basis_code == SKIP
91
+ @departure_date = departure_date unless departure_date == SKIP
92
+ @arrival_date = arrival_date unless arrival_date == SKIP
93
+ @additional_properties = additional_properties
94
+ end
95
+
96
+ # Creates an instance of the object from a hash.
97
+ def self.from_hash(hash)
98
+ return nil unless hash
99
+
100
+ # Extract variables from the hash.
101
+ departure_airport_code =
102
+ hash.key?('departureAirportCode') ? hash['departureAirportCode'] : SKIP
103
+ arrival_airport_code =
104
+ hash.key?('arrivalAirportCode') ? hash['arrivalAirportCode'] : SKIP
105
+ flight_number = hash.key?('flightNumber') ? hash['flightNumber'] : SKIP
106
+ segment_number = hash.key?('segmentNumber') ? hash['segmentNumber'] : SKIP
107
+ class_of_service_code =
108
+ hash.key?('classOfServiceCode') ? hash['classOfServiceCode'] : SKIP
109
+ fare_basis_code =
110
+ hash.key?('fareBasisCode') ? hash['fareBasisCode'] : SKIP
111
+ departure_date = hash.key?('departureDate') ? hash['departureDate'] : SKIP
112
+ arrival_date = hash.key?('arrivalDate') ? hash['arrivalDate'] : SKIP
113
+
114
+ # Create a new hash for additional properties, removing known properties.
115
+ new_hash = hash.reject { |k, _| names.value?(k) }
116
+
117
+ additional_properties = APIHelper.get_additional_properties(
118
+ new_hash, proc { |value| value }
119
+ )
120
+
121
+ # Create object from extracted values.
122
+ Leg33.new(departure_airport_code: departure_airport_code,
123
+ arrival_airport_code: arrival_airport_code,
124
+ flight_number: flight_number,
125
+ segment_number: segment_number,
126
+ class_of_service_code: class_of_service_code,
127
+ fare_basis_code: fare_basis_code,
128
+ departure_date: departure_date,
129
+ arrival_date: arrival_date,
130
+ additional_properties: additional_properties)
131
+ end
132
+
133
+ # Validates an instance of the object from a given value.
134
+ # @param [Leg33 | Hash] The value against the validation is performed.
135
+ def self.validate(value)
136
+ return true if value.instance_of? self
137
+
138
+ return false unless value.instance_of? Hash
139
+
140
+ true
141
+ end
142
+
143
+ # Provides a human-readable string representation of the object.
144
+ def to_s
145
+ class_name = self.class.name.split('::').last
146
+ "<#{class_name} departure_airport_code: #{@departure_airport_code}, arrival_airport_code:"\
147
+ " #{@arrival_airport_code}, flight_number: #{@flight_number}, segment_number:"\
148
+ " #{@segment_number}, class_of_service_code: #{@class_of_service_code}, fare_basis_code:"\
149
+ " #{@fare_basis_code}, departure_date: #{@departure_date}, arrival_date: #{@arrival_date},"\
150
+ " additional_properties: #{@additional_properties}>"
151
+ end
152
+
153
+ # Provides a debugging-friendly string with detailed object information.
154
+ def inspect
155
+ class_name = self.class.name.split('::').last
156
+ "<#{class_name} departure_airport_code: #{@departure_airport_code.inspect},"\
157
+ " arrival_airport_code: #{@arrival_airport_code.inspect}, flight_number:"\
158
+ " #{@flight_number.inspect}, segment_number: #{@segment_number.inspect},"\
159
+ " class_of_service_code: #{@class_of_service_code.inspect}, fare_basis_code:"\
160
+ " #{@fare_basis_code.inspect}, departure_date: #{@departure_date.inspect}, arrival_date:"\
161
+ " #{@arrival_date.inspect}, additional_properties: #{@additional_properties}>"
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,143 @@
1
+ # bcd_travel_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module BcdTravelApi
7
+ # Leg34 Model.
8
+ class Leg34 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :arrival_date_time
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :arrival_station_code
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :carrier_code
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :carrier_name
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :departure_date_time
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [String]
34
+ attr_accessor :departure_station_code
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :segment_number
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [String]
42
+ attr_accessor :train_number
43
+
44
+ # A mapping from model property names to API property names.
45
+ def self.names
46
+ @_hash = {} if @_hash.nil?
47
+ @_hash['arrival_date_time'] = 'arrivalDateTime'
48
+ @_hash['arrival_station_code'] = 'arrivalStationCode'
49
+ @_hash['carrier_code'] = 'carrierCode'
50
+ @_hash['carrier_name'] = 'carrierName'
51
+ @_hash['departure_date_time'] = 'departureDateTime'
52
+ @_hash['departure_station_code'] = 'departureStationCode'
53
+ @_hash['segment_number'] = 'segmentNumber'
54
+ @_hash['train_number'] = 'trainNumber'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ []
61
+ end
62
+
63
+ # An array for nullable fields
64
+ def self.nullables
65
+ []
66
+ end
67
+
68
+ def initialize(arrival_date_time:, arrival_station_code:, carrier_code:,
69
+ carrier_name:, departure_date_time:, departure_station_code:,
70
+ segment_number:, train_number:, additional_properties: nil)
71
+ # Add additional model properties to the instance
72
+ additional_properties = {} if additional_properties.nil?
73
+
74
+ @arrival_date_time = arrival_date_time
75
+ @arrival_station_code = arrival_station_code
76
+ @carrier_code = carrier_code
77
+ @carrier_name = carrier_name
78
+ @departure_date_time = departure_date_time
79
+ @departure_station_code = departure_station_code
80
+ @segment_number = segment_number
81
+ @train_number = train_number
82
+ @additional_properties = additional_properties
83
+ end
84
+
85
+ # Creates an instance of the object from a hash.
86
+ def self.from_hash(hash)
87
+ return nil unless hash
88
+
89
+ # Extract variables from the hash.
90
+ arrival_date_time =
91
+ hash.key?('arrivalDateTime') ? hash['arrivalDateTime'] : nil
92
+ arrival_station_code =
93
+ hash.key?('arrivalStationCode') ? hash['arrivalStationCode'] : nil
94
+ carrier_code = hash.key?('carrierCode') ? hash['carrierCode'] : nil
95
+ carrier_name = hash.key?('carrierName') ? hash['carrierName'] : nil
96
+ departure_date_time =
97
+ hash.key?('departureDateTime') ? hash['departureDateTime'] : nil
98
+ departure_station_code =
99
+ hash.key?('departureStationCode') ? hash['departureStationCode'] : nil
100
+ segment_number = hash.key?('segmentNumber') ? hash['segmentNumber'] : nil
101
+ train_number = hash.key?('trainNumber') ? hash['trainNumber'] : nil
102
+
103
+ # Create a new hash for additional properties, removing known properties.
104
+ new_hash = hash.reject { |k, _| names.value?(k) }
105
+
106
+ additional_properties = APIHelper.get_additional_properties(
107
+ new_hash, proc { |value| value }
108
+ )
109
+
110
+ # Create object from extracted values.
111
+ Leg34.new(arrival_date_time: arrival_date_time,
112
+ arrival_station_code: arrival_station_code,
113
+ carrier_code: carrier_code,
114
+ carrier_name: carrier_name,
115
+ departure_date_time: departure_date_time,
116
+ departure_station_code: departure_station_code,
117
+ segment_number: segment_number,
118
+ train_number: train_number,
119
+ additional_properties: additional_properties)
120
+ end
121
+
122
+ # Provides a human-readable string representation of the object.
123
+ def to_s
124
+ class_name = self.class.name.split('::').last
125
+ "<#{class_name} arrival_date_time: #{@arrival_date_time}, arrival_station_code:"\
126
+ " #{@arrival_station_code}, carrier_code: #{@carrier_code}, carrier_name: #{@carrier_name},"\
127
+ " departure_date_time: #{@departure_date_time}, departure_station_code:"\
128
+ " #{@departure_station_code}, segment_number: #{@segment_number}, train_number:"\
129
+ " #{@train_number}, additional_properties: #{@additional_properties}>"
130
+ end
131
+
132
+ # Provides a debugging-friendly string with detailed object information.
133
+ def inspect
134
+ class_name = self.class.name.split('::').last
135
+ "<#{class_name} arrival_date_time: #{@arrival_date_time.inspect}, arrival_station_code:"\
136
+ " #{@arrival_station_code.inspect}, carrier_code: #{@carrier_code.inspect}, carrier_name:"\
137
+ " #{@carrier_name.inspect}, departure_date_time: #{@departure_date_time.inspect},"\
138
+ " departure_station_code: #{@departure_station_code.inspect}, segment_number:"\
139
+ " #{@segment_number.inspect}, train_number: #{@train_number.inspect}, additional_properties:"\
140
+ " #{@additional_properties}>"
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,154 @@
1
+ # bcd_travel_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module BcdTravelApi
7
+ # Leg4 Model.
8
+ class Leg4 < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :arrival_date_time
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [String]
18
+ attr_accessor :arrival_station_code
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_accessor :carrier_code
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :carrier_name
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :class_of_service_code
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [String]
34
+ attr_accessor :departure_date_time
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :departure_station_code
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [Integer]
42
+ attr_accessor :segment_number
43
+
44
+ # TODO: Write general description for this method
45
+ # @return [String]
46
+ attr_accessor :train_number
47
+
48
+ # A mapping from model property names to API property names.
49
+ def self.names
50
+ @_hash = {} if @_hash.nil?
51
+ @_hash['arrival_date_time'] = 'arrivalDateTime'
52
+ @_hash['arrival_station_code'] = 'arrivalStationCode'
53
+ @_hash['carrier_code'] = 'carrierCode'
54
+ @_hash['carrier_name'] = 'carrierName'
55
+ @_hash['class_of_service_code'] = 'classOfServiceCode'
56
+ @_hash['departure_date_time'] = 'departureDateTime'
57
+ @_hash['departure_station_code'] = 'departureStationCode'
58
+ @_hash['segment_number'] = 'segmentNumber'
59
+ @_hash['train_number'] = 'trainNumber'
60
+ @_hash
61
+ end
62
+
63
+ # An array for optional fields
64
+ def self.optionals
65
+ []
66
+ end
67
+
68
+ # An array for nullable fields
69
+ def self.nullables
70
+ []
71
+ end
72
+
73
+ def initialize(arrival_date_time:, arrival_station_code:, carrier_code:,
74
+ carrier_name:, class_of_service_code:, departure_date_time:,
75
+ departure_station_code:, segment_number:, train_number:,
76
+ additional_properties: nil)
77
+ # Add additional model properties to the instance
78
+ additional_properties = {} if additional_properties.nil?
79
+
80
+ @arrival_date_time = arrival_date_time
81
+ @arrival_station_code = arrival_station_code
82
+ @carrier_code = carrier_code
83
+ @carrier_name = carrier_name
84
+ @class_of_service_code = class_of_service_code
85
+ @departure_date_time = departure_date_time
86
+ @departure_station_code = departure_station_code
87
+ @segment_number = segment_number
88
+ @train_number = train_number
89
+ @additional_properties = additional_properties
90
+ end
91
+
92
+ # Creates an instance of the object from a hash.
93
+ def self.from_hash(hash)
94
+ return nil unless hash
95
+
96
+ # Extract variables from the hash.
97
+ arrival_date_time =
98
+ hash.key?('arrivalDateTime') ? hash['arrivalDateTime'] : nil
99
+ arrival_station_code =
100
+ hash.key?('arrivalStationCode') ? hash['arrivalStationCode'] : nil
101
+ carrier_code = hash.key?('carrierCode') ? hash['carrierCode'] : nil
102
+ carrier_name = hash.key?('carrierName') ? hash['carrierName'] : nil
103
+ class_of_service_code =
104
+ hash.key?('classOfServiceCode') ? hash['classOfServiceCode'] : nil
105
+ departure_date_time =
106
+ hash.key?('departureDateTime') ? hash['departureDateTime'] : nil
107
+ departure_station_code =
108
+ hash.key?('departureStationCode') ? hash['departureStationCode'] : nil
109
+ segment_number = hash.key?('segmentNumber') ? hash['segmentNumber'] : nil
110
+ train_number = hash.key?('trainNumber') ? hash['trainNumber'] : nil
111
+
112
+ # Create a new hash for additional properties, removing known properties.
113
+ new_hash = hash.reject { |k, _| names.value?(k) }
114
+
115
+ additional_properties = APIHelper.get_additional_properties(
116
+ new_hash, proc { |value| value }
117
+ )
118
+
119
+ # Create object from extracted values.
120
+ Leg4.new(arrival_date_time: arrival_date_time,
121
+ arrival_station_code: arrival_station_code,
122
+ carrier_code: carrier_code,
123
+ carrier_name: carrier_name,
124
+ class_of_service_code: class_of_service_code,
125
+ departure_date_time: departure_date_time,
126
+ departure_station_code: departure_station_code,
127
+ segment_number: segment_number,
128
+ train_number: train_number,
129
+ additional_properties: additional_properties)
130
+ end
131
+
132
+ # Provides a human-readable string representation of the object.
133
+ def to_s
134
+ class_name = self.class.name.split('::').last
135
+ "<#{class_name} arrival_date_time: #{@arrival_date_time}, arrival_station_code:"\
136
+ " #{@arrival_station_code}, carrier_code: #{@carrier_code}, carrier_name: #{@carrier_name},"\
137
+ " class_of_service_code: #{@class_of_service_code}, departure_date_time:"\
138
+ " #{@departure_date_time}, departure_station_code: #{@departure_station_code},"\
139
+ " segment_number: #{@segment_number}, train_number: #{@train_number}, additional_properties:"\
140
+ " #{@additional_properties}>"
141
+ end
142
+
143
+ # Provides a debugging-friendly string with detailed object information.
144
+ def inspect
145
+ class_name = self.class.name.split('::').last
146
+ "<#{class_name} arrival_date_time: #{@arrival_date_time.inspect}, arrival_station_code:"\
147
+ " #{@arrival_station_code.inspect}, carrier_code: #{@carrier_code.inspect}, carrier_name:"\
148
+ " #{@carrier_name.inspect}, class_of_service_code: #{@class_of_service_code.inspect},"\
149
+ " departure_date_time: #{@departure_date_time.inspect}, departure_station_code:"\
150
+ " #{@departure_station_code.inspect}, segment_number: #{@segment_number.inspect},"\
151
+ " train_number: #{@train_number.inspect}, additional_properties: #{@additional_properties}>"
152
+ end
153
+ end
154
+ end