AWS SDK for C++

AWS SDK for C++ Version 1.11.832

Loading...
Searching...
No Matches
RouteRentalLegDetails.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/geo-routes/GeoRoutes_EXPORTS.h>
9#include <aws/geo-routes/model/RouteAttribution.h>
10#include <aws/geo-routes/model/RouteRentalAfterTravelStep.h>
11#include <aws/geo-routes/model/RouteRentalAgency.h>
12#include <aws/geo-routes/model/RouteRentalArrival.h>
13#include <aws/geo-routes/model/RouteRentalBeforeTravelStep.h>
14#include <aws/geo-routes/model/RouteRentalDeparture.h>
15#include <aws/geo-routes/model/RouteRentalSummary.h>
16#include <aws/geo-routes/model/RouteRentalTransportModeDetails.h>
17#include <aws/geo-routes/model/RouteRentalTravelStep.h>
18#include <aws/geo-routes/model/RouteWebLink.h>
19
20#include <utility>
21
22namespace Aws {
23namespace Utils {
24namespace Json {
25class JsonValue;
26class JsonView;
27} // namespace Json
28} // namespace Utils
29namespace GeoRoutes {
30namespace Model {
31
39 public:
40 AWS_GEOROUTES_API RouteRentalLegDetails() = default;
43 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
44
46
50 inline const Aws::Vector<RouteRentalAfterTravelStep>& GetAfterTravelSteps() const { return m_afterTravelSteps; }
51 inline bool AfterTravelStepsHasBeenSet() const { return m_afterTravelStepsHasBeenSet; }
52 template <typename AfterTravelStepsT = Aws::Vector<RouteRentalAfterTravelStep>>
53 void SetAfterTravelSteps(AfterTravelStepsT&& value) {
54 m_afterTravelStepsHasBeenSet = true;
55 m_afterTravelSteps = std::forward<AfterTravelStepsT>(value);
56 }
57 template <typename AfterTravelStepsT = Aws::Vector<RouteRentalAfterTravelStep>>
58 RouteRentalLegDetails& WithAfterTravelSteps(AfterTravelStepsT&& value) {
59 SetAfterTravelSteps(std::forward<AfterTravelStepsT>(value));
60 return *this;
61 }
62 template <typename AfterTravelStepsT = RouteRentalAfterTravelStep>
63 RouteRentalLegDetails& AddAfterTravelSteps(AfterTravelStepsT&& value) {
64 m_afterTravelStepsHasBeenSet = true;
65 m_afterTravelSteps.emplace_back(std::forward<AfterTravelStepsT>(value));
66 return *this;
67 }
69
71
74 inline const RouteRentalAgency& GetAgency() const { return m_agency; }
75 inline bool AgencyHasBeenSet() const { return m_agencyHasBeenSet; }
76 template <typename AgencyT = RouteRentalAgency>
77 void SetAgency(AgencyT&& value) {
78 m_agencyHasBeenSet = true;
79 m_agency = std::forward<AgencyT>(value);
80 }
81 template <typename AgencyT = RouteRentalAgency>
83 SetAgency(std::forward<AgencyT>(value));
84 return *this;
85 }
87
89
92 inline const RouteRentalArrival& GetArrival() const { return m_arrival; }
93 inline bool ArrivalHasBeenSet() const { return m_arrivalHasBeenSet; }
94 template <typename ArrivalT = RouteRentalArrival>
95 void SetArrival(ArrivalT&& value) {
96 m_arrivalHasBeenSet = true;
97 m_arrival = std::forward<ArrivalT>(value);
98 }
99 template <typename ArrivalT = RouteRentalArrival>
101 SetArrival(std::forward<ArrivalT>(value));
102 return *this;
103 }
105
107
110 inline const Aws::Vector<RouteAttribution>& GetAttributions() const { return m_attributions; }
111 inline bool AttributionsHasBeenSet() const { return m_attributionsHasBeenSet; }
112 template <typename AttributionsT = Aws::Vector<RouteAttribution>>
113 void SetAttributions(AttributionsT&& value) {
114 m_attributionsHasBeenSet = true;
115 m_attributions = std::forward<AttributionsT>(value);
116 }
117 template <typename AttributionsT = Aws::Vector<RouteAttribution>>
118 RouteRentalLegDetails& WithAttributions(AttributionsT&& value) {
119 SetAttributions(std::forward<AttributionsT>(value));
120 return *this;
121 }
122 template <typename AttributionsT = RouteAttribution>
123 RouteRentalLegDetails& AddAttributions(AttributionsT&& value) {
124 m_attributionsHasBeenSet = true;
125 m_attributions.emplace_back(std::forward<AttributionsT>(value));
126 return *this;
127 }
129
131
135 inline const Aws::Vector<RouteRentalBeforeTravelStep>& GetBeforeTravelSteps() const { return m_beforeTravelSteps; }
136 inline bool BeforeTravelStepsHasBeenSet() const { return m_beforeTravelStepsHasBeenSet; }
137 template <typename BeforeTravelStepsT = Aws::Vector<RouteRentalBeforeTravelStep>>
138 void SetBeforeTravelSteps(BeforeTravelStepsT&& value) {
139 m_beforeTravelStepsHasBeenSet = true;
140 m_beforeTravelSteps = std::forward<BeforeTravelStepsT>(value);
141 }
142 template <typename BeforeTravelStepsT = Aws::Vector<RouteRentalBeforeTravelStep>>
143 RouteRentalLegDetails& WithBeforeTravelSteps(BeforeTravelStepsT&& value) {
144 SetBeforeTravelSteps(std::forward<BeforeTravelStepsT>(value));
145 return *this;
146 }
147 template <typename BeforeTravelStepsT = RouteRentalBeforeTravelStep>
148 RouteRentalLegDetails& AddBeforeTravelSteps(BeforeTravelStepsT&& value) {
149 m_beforeTravelStepsHasBeenSet = true;
150 m_beforeTravelSteps.emplace_back(std::forward<BeforeTravelStepsT>(value));
151 return *this;
152 }
154
156
159 inline const Aws::Vector<RouteWebLink>& GetBookingWebLinks() const { return m_bookingWebLinks; }
160 inline bool BookingWebLinksHasBeenSet() const { return m_bookingWebLinksHasBeenSet; }
161 template <typename BookingWebLinksT = Aws::Vector<RouteWebLink>>
162 void SetBookingWebLinks(BookingWebLinksT&& value) {
163 m_bookingWebLinksHasBeenSet = true;
164 m_bookingWebLinks = std::forward<BookingWebLinksT>(value);
165 }
166 template <typename BookingWebLinksT = Aws::Vector<RouteWebLink>>
167 RouteRentalLegDetails& WithBookingWebLinks(BookingWebLinksT&& value) {
168 SetBookingWebLinks(std::forward<BookingWebLinksT>(value));
169 return *this;
170 }
171 template <typename BookingWebLinksT = RouteWebLink>
172 RouteRentalLegDetails& AddBookingWebLinks(BookingWebLinksT&& value) {
173 m_bookingWebLinksHasBeenSet = true;
174 m_bookingWebLinks.emplace_back(std::forward<BookingWebLinksT>(value));
175 return *this;
176 }
178
180
183 inline const RouteRentalDeparture& GetDeparture() const { return m_departure; }
184 inline bool DepartureHasBeenSet() const { return m_departureHasBeenSet; }
185 template <typename DepartureT = RouteRentalDeparture>
186 void SetDeparture(DepartureT&& value) {
187 m_departureHasBeenSet = true;
188 m_departure = std::forward<DepartureT>(value);
189 }
190 template <typename DepartureT = RouteRentalDeparture>
192 SetDeparture(std::forward<DepartureT>(value));
193 return *this;
194 }
196
198
201 inline const RouteRentalSummary& GetSummary() const { return m_summary; }
202 inline bool SummaryHasBeenSet() const { return m_summaryHasBeenSet; }
203 template <typename SummaryT = RouteRentalSummary>
204 void SetSummary(SummaryT&& value) {
205 m_summaryHasBeenSet = true;
206 m_summary = std::forward<SummaryT>(value);
207 }
208 template <typename SummaryT = RouteRentalSummary>
210 SetSummary(std::forward<SummaryT>(value));
211 return *this;
212 }
214
216
219 inline const RouteRentalTransportModeDetails& GetTransport() const { return m_transport; }
220 inline bool TransportHasBeenSet() const { return m_transportHasBeenSet; }
221 template <typename TransportT = RouteRentalTransportModeDetails>
222 void SetTransport(TransportT&& value) {
223 m_transportHasBeenSet = true;
224 m_transport = std::forward<TransportT>(value);
225 }
226 template <typename TransportT = RouteRentalTransportModeDetails>
228 SetTransport(std::forward<TransportT>(value));
229 return *this;
230 }
232
234
238 inline const Aws::Vector<RouteRentalTravelStep>& GetTravelSteps() const { return m_travelSteps; }
239 inline bool TravelStepsHasBeenSet() const { return m_travelStepsHasBeenSet; }
240 template <typename TravelStepsT = Aws::Vector<RouteRentalTravelStep>>
241 void SetTravelSteps(TravelStepsT&& value) {
242 m_travelStepsHasBeenSet = true;
243 m_travelSteps = std::forward<TravelStepsT>(value);
244 }
245 template <typename TravelStepsT = Aws::Vector<RouteRentalTravelStep>>
246 RouteRentalLegDetails& WithTravelSteps(TravelStepsT&& value) {
247 SetTravelSteps(std::forward<TravelStepsT>(value));
248 return *this;
249 }
250 template <typename TravelStepsT = RouteRentalTravelStep>
251 RouteRentalLegDetails& AddTravelSteps(TravelStepsT&& value) {
252 m_travelStepsHasBeenSet = true;
253 m_travelSteps.emplace_back(std::forward<TravelStepsT>(value));
254 return *this;
255 }
257 private:
259
260 RouteRentalAgency m_agency;
261
262 RouteRentalArrival m_arrival;
263
264 Aws::Vector<RouteAttribution> m_attributions;
265
267
268 Aws::Vector<RouteWebLink> m_bookingWebLinks;
269
270 RouteRentalDeparture m_departure;
271
272 RouteRentalSummary m_summary;
273
275
277 bool m_afterTravelStepsHasBeenSet = false;
278 bool m_agencyHasBeenSet = false;
279 bool m_arrivalHasBeenSet = false;
280 bool m_attributionsHasBeenSet = false;
281 bool m_beforeTravelStepsHasBeenSet = false;
282 bool m_bookingWebLinksHasBeenSet = false;
283 bool m_departureHasBeenSet = false;
284 bool m_summaryHasBeenSet = false;
285 bool m_transportHasBeenSet = false;
286 bool m_travelStepsHasBeenSet = false;
287};
288
289} // namespace Model
290} // namespace GeoRoutes
291} // namespace Aws
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_GEOROUTES_API RouteRentalLegDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetBeforeTravelSteps(BeforeTravelStepsT &&value)
const RouteRentalDeparture & GetDeparture() const
AWS_GEOROUTES_API RouteRentalLegDetails()=default
RouteRentalLegDetails & WithAgency(AgencyT &&value)
RouteRentalLegDetails & WithBookingWebLinks(BookingWebLinksT &&value)
RouteRentalLegDetails & AddBookingWebLinks(BookingWebLinksT &&value)
RouteRentalLegDetails & AddAttributions(AttributionsT &&value)
const RouteRentalTransportModeDetails & GetTransport() const
RouteRentalLegDetails & WithBeforeTravelSteps(BeforeTravelStepsT &&value)
RouteRentalLegDetails & WithDeparture(DepartureT &&value)
const RouteRentalSummary & GetSummary() const
RouteRentalLegDetails & WithSummary(SummaryT &&value)
const Aws::Vector< RouteRentalBeforeTravelStep > & GetBeforeTravelSteps() const
RouteRentalLegDetails & WithTravelSteps(TravelStepsT &&value)
const Aws::Vector< RouteWebLink > & GetBookingWebLinks() const
RouteRentalLegDetails & WithAfterTravelSteps(AfterTravelStepsT &&value)
const Aws::Vector< RouteAttribution > & GetAttributions() const
RouteRentalLegDetails & AddAfterTravelSteps(AfterTravelStepsT &&value)
const Aws::Vector< RouteRentalAfterTravelStep > & GetAfterTravelSteps() const
RouteRentalLegDetails & AddTravelSteps(TravelStepsT &&value)
RouteRentalLegDetails & WithTransport(TransportT &&value)
RouteRentalLegDetails & AddBeforeTravelSteps(BeforeTravelStepsT &&value)
RouteRentalLegDetails & WithAttributions(AttributionsT &&value)
const RouteRentalAgency & GetAgency() const
const RouteRentalArrival & GetArrival() const
AWS_GEOROUTES_API RouteRentalLegDetails(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< RouteRentalTravelStep > & GetTravelSteps() const
RouteRentalLegDetails & WithArrival(ArrivalT &&value)
void SetAfterTravelSteps(AfterTravelStepsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue