AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
WaitAndContinueSpecification.h
1
6#pragma once
7#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8#include <aws/lexv2-models/model/ResponseSpecification.h>
9#include <aws/lexv2-models/model/StillWaitingResponseSpecification.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace LexModelsV2 {
21namespace Model {
22
30 public:
31 AWS_LEXMODELSV2_API WaitAndContinueSpecification() = default;
34 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
41 inline const ResponseSpecification& GetWaitingResponse() const { return m_waitingResponse; }
42 inline bool WaitingResponseHasBeenSet() const { return m_waitingResponseHasBeenSet; }
43 template <typename WaitingResponseT = ResponseSpecification>
44 void SetWaitingResponse(WaitingResponseT&& value) {
45 m_waitingResponseHasBeenSet = true;
46 m_waitingResponse = std::forward<WaitingResponseT>(value);
47 }
48 template <typename WaitingResponseT = ResponseSpecification>
50 SetWaitingResponse(std::forward<WaitingResponseT>(value));
51 return *this;
52 }
54
56
60 inline const ResponseSpecification& GetContinueResponse() const { return m_continueResponse; }
61 inline bool ContinueResponseHasBeenSet() const { return m_continueResponseHasBeenSet; }
62 template <typename ContinueResponseT = ResponseSpecification>
63 void SetContinueResponse(ContinueResponseT&& value) {
64 m_continueResponseHasBeenSet = true;
65 m_continueResponse = std::forward<ContinueResponseT>(value);
66 }
67 template <typename ContinueResponseT = ResponseSpecification>
69 SetContinueResponse(std::forward<ContinueResponseT>(value));
70 return *this;
71 }
73
75
79 inline const StillWaitingResponseSpecification& GetStillWaitingResponse() const { return m_stillWaitingResponse; }
80 inline bool StillWaitingResponseHasBeenSet() const { return m_stillWaitingResponseHasBeenSet; }
81 template <typename StillWaitingResponseT = StillWaitingResponseSpecification>
82 void SetStillWaitingResponse(StillWaitingResponseT&& value) {
83 m_stillWaitingResponseHasBeenSet = true;
84 m_stillWaitingResponse = std::forward<StillWaitingResponseT>(value);
85 }
86 template <typename StillWaitingResponseT = StillWaitingResponseSpecification>
88 SetStillWaitingResponse(std::forward<StillWaitingResponseT>(value));
89 return *this;
90 }
92
94
99 inline bool GetActive() const { return m_active; }
100 inline bool ActiveHasBeenSet() const { return m_activeHasBeenSet; }
101 inline void SetActive(bool value) {
102 m_activeHasBeenSet = true;
103 m_active = value;
104 }
106 SetActive(value);
107 return *this;
108 }
110 private:
111 ResponseSpecification m_waitingResponse;
112
113 ResponseSpecification m_continueResponse;
114
115 StillWaitingResponseSpecification m_stillWaitingResponse;
116
117 bool m_active{false};
118 bool m_waitingResponseHasBeenSet = false;
119 bool m_continueResponseHasBeenSet = false;
120 bool m_stillWaitingResponseHasBeenSet = false;
121 bool m_activeHasBeenSet = false;
122};
123
124} // namespace Model
125} // namespace LexModelsV2
126} // namespace Aws
AWS_LEXMODELSV2_API WaitAndContinueSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
WaitAndContinueSpecification & WithStillWaitingResponse(StillWaitingResponseT &&value)
WaitAndContinueSpecification & WithContinueResponse(ContinueResponseT &&value)
WaitAndContinueSpecification & WithWaitingResponse(WaitingResponseT &&value)
const StillWaitingResponseSpecification & GetStillWaitingResponse() const
AWS_LEXMODELSV2_API WaitAndContinueSpecification()=default
AWS_LEXMODELSV2_API WaitAndContinueSpecification(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue