AWS SDK for C++

AWS SDK for C++ Version 1.11.634

Loading...
Searching...
No Matches
FlowNode.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/bedrock-agent/model/FlowNodeType.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/bedrock-agent/model/FlowNodeInput.h>
12#include <aws/bedrock-agent/model/FlowNodeOutput.h>
13#include <aws/core/utils/memory/stl/AWSAllocator.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace BedrockAgent
27{
28namespace Model
29{
30 class FlowNodeConfiguration;
31
39 {
40 public:
41 AWS_BEDROCKAGENT_API FlowNode() = default;
42 AWS_BEDROCKAGENT_API FlowNode(Aws::Utils::Json::JsonView jsonValue);
43 AWS_BEDROCKAGENT_API FlowNode& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetName() const { return m_name; }
52 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
53 template<typename NameT = Aws::String>
54 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
55 template<typename NameT = Aws::String>
56 FlowNode& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
58
60
65 inline FlowNodeType GetType() const { return m_type; }
66 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
67 inline void SetType(FlowNodeType value) { m_typeHasBeenSet = true; m_type = value; }
68 inline FlowNode& WithType(FlowNodeType value) { SetType(value); return *this;}
70
72
76 return *m_configuration;
77 }
78 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
79 template<typename ConfigurationT = FlowNodeConfiguration>
80 void SetConfiguration(ConfigurationT&& value) {
81 m_configurationHasBeenSet = true;
82 m_configuration = Aws::MakeShared<FlowNodeConfiguration>("FlowNode", std::forward<ConfigurationT>(value));
83 }
84 template<typename ConfigurationT = FlowNodeConfiguration>
85 FlowNode& WithConfiguration(ConfigurationT&& value) { SetConfiguration(std::forward<ConfigurationT>(value)); return *this;}
87
89
93 inline const Aws::Vector<FlowNodeInput>& GetInputs() const { return m_inputs; }
94 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
95 template<typename InputsT = Aws::Vector<FlowNodeInput>>
96 void SetInputs(InputsT&& value) { m_inputsHasBeenSet = true; m_inputs = std::forward<InputsT>(value); }
97 template<typename InputsT = Aws::Vector<FlowNodeInput>>
98 FlowNode& WithInputs(InputsT&& value) { SetInputs(std::forward<InputsT>(value)); return *this;}
99 template<typename InputsT = FlowNodeInput>
100 FlowNode& AddInputs(InputsT&& value) { m_inputsHasBeenSet = true; m_inputs.emplace_back(std::forward<InputsT>(value)); return *this; }
102
104
108 inline const Aws::Vector<FlowNodeOutput>& GetOutputs() const { return m_outputs; }
109 inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
110 template<typename OutputsT = Aws::Vector<FlowNodeOutput>>
111 void SetOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs = std::forward<OutputsT>(value); }
112 template<typename OutputsT = Aws::Vector<FlowNodeOutput>>
113 FlowNode& WithOutputs(OutputsT&& value) { SetOutputs(std::forward<OutputsT>(value)); return *this;}
114 template<typename OutputsT = FlowNodeOutput>
115 FlowNode& AddOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs.emplace_back(std::forward<OutputsT>(value)); return *this; }
117 private:
118
119 Aws::String m_name;
120 bool m_nameHasBeenSet = false;
121
123 bool m_typeHasBeenSet = false;
124
125 std::shared_ptr<FlowNodeConfiguration> m_configuration;
126 bool m_configurationHasBeenSet = false;
127
129 bool m_inputsHasBeenSet = false;
130
132 bool m_outputsHasBeenSet = false;
133 };
134
135} // namespace Model
136} // namespace BedrockAgent
137} // namespace Aws
const FlowNodeConfiguration & GetConfiguration() const
Definition FlowNode.h:75
const Aws::String & GetName() const
Definition FlowNode.h:51
void SetInputs(InputsT &&value)
Definition FlowNode.h:96
void SetConfiguration(ConfigurationT &&value)
Definition FlowNode.h:80
FlowNode & AddInputs(InputsT &&value)
Definition FlowNode.h:100
FlowNode & WithOutputs(OutputsT &&value)
Definition FlowNode.h:113
FlowNodeType GetType() const
Definition FlowNode.h:65
void SetOutputs(OutputsT &&value)
Definition FlowNode.h:111
void SetType(FlowNodeType value)
Definition FlowNode.h:67
AWS_BEDROCKAGENT_API FlowNode & operator=(Aws::Utils::Json::JsonView jsonValue)
FlowNode & WithName(NameT &&value)
Definition FlowNode.h:56
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_BEDROCKAGENT_API FlowNode()=default
const Aws::Vector< FlowNodeInput > & GetInputs() const
Definition FlowNode.h:93
const Aws::Vector< FlowNodeOutput > & GetOutputs() const
Definition FlowNode.h:108
FlowNode & WithInputs(InputsT &&value)
Definition FlowNode.h:98
FlowNode & AddOutputs(OutputsT &&value)
Definition FlowNode.h:115
FlowNode & WithType(FlowNodeType value)
Definition FlowNode.h:68
void SetName(NameT &&value)
Definition FlowNode.h:54
AWS_BEDROCKAGENT_API FlowNode(Aws::Utils::Json::JsonView jsonValue)
FlowNode & WithConfiguration(ConfigurationT &&value)
Definition FlowNode.h:85
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue