AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ConditionalBranch.h
1
6#pragma once
7#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/lexv2-models/model/Condition.h>
10#include <aws/lexv2-models/model/DialogState.h>
11#include <aws/lexv2-models/model/ResponseSpecification.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace LexModelsV2
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_LEXMODELSV2_API ConditionalBranch() = default;
39 AWS_LEXMODELSV2_API ConditionalBranch(Aws::Utils::Json::JsonView jsonValue);
41 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetName() const { return m_name; }
49 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
50 template<typename NameT = Aws::String>
51 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
52 template<typename NameT = Aws::String>
53 ConditionalBranch& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
55
57
61 inline const Condition& GetCondition() const { return m_condition; }
62 inline bool ConditionHasBeenSet() const { return m_conditionHasBeenSet; }
63 template<typename ConditionT = Condition>
64 void SetCondition(ConditionT&& value) { m_conditionHasBeenSet = true; m_condition = std::forward<ConditionT>(value); }
65 template<typename ConditionT = Condition>
66 ConditionalBranch& WithCondition(ConditionT&& value) { SetCondition(std::forward<ConditionT>(value)); return *this;}
68
70
73 inline const DialogState& GetNextStep() const { return m_nextStep; }
74 inline bool NextStepHasBeenSet() const { return m_nextStepHasBeenSet; }
75 template<typename NextStepT = DialogState>
76 void SetNextStep(NextStepT&& value) { m_nextStepHasBeenSet = true; m_nextStep = std::forward<NextStepT>(value); }
77 template<typename NextStepT = DialogState>
78 ConditionalBranch& WithNextStep(NextStepT&& value) { SetNextStep(std::forward<NextStepT>(value)); return *this;}
80
82
83 inline const ResponseSpecification& GetResponse() const { return m_response; }
84 inline bool ResponseHasBeenSet() const { return m_responseHasBeenSet; }
85 template<typename ResponseT = ResponseSpecification>
86 void SetResponse(ResponseT&& value) { m_responseHasBeenSet = true; m_response = std::forward<ResponseT>(value); }
87 template<typename ResponseT = ResponseSpecification>
88 ConditionalBranch& WithResponse(ResponseT&& value) { SetResponse(std::forward<ResponseT>(value)); return *this;}
90 private:
91
92 Aws::String m_name;
93 bool m_nameHasBeenSet = false;
94
95 Condition m_condition;
96 bool m_conditionHasBeenSet = false;
97
98 DialogState m_nextStep;
99 bool m_nextStepHasBeenSet = false;
100
101 ResponseSpecification m_response;
102 bool m_responseHasBeenSet = false;
103 };
104
105} // namespace Model
106} // namespace LexModelsV2
107} // namespace Aws
AWS_LEXMODELSV2_API ConditionalBranch(Aws::Utils::Json::JsonView jsonValue)
ConditionalBranch & WithNextStep(NextStepT &&value)
ConditionalBranch & WithName(NameT &&value)
ConditionalBranch & WithResponse(ResponseT &&value)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
ConditionalBranch & WithCondition(ConditionT &&value)
const ResponseSpecification & GetResponse() const
AWS_LEXMODELSV2_API ConditionalBranch & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API ConditionalBranch()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue