AWS SDK for C++

AWS SDK for C++ Version 1.11.606

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/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/bedrock-agent/model/FlowNodeType.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
52 return *m_configuration;
53 }
54 inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; }
55 template<typename ConfigurationT = FlowNodeConfiguration>
56 void SetConfiguration(ConfigurationT&& value) {
57 m_configurationHasBeenSet = true;
58 m_configuration = Aws::MakeShared<FlowNodeConfiguration>("FlowNode", std::forward<ConfigurationT>(value));
59 }
60 template<typename ConfigurationT = FlowNodeConfiguration>
61 FlowNode& WithConfiguration(ConfigurationT&& value) { SetConfiguration(std::forward<ConfigurationT>(value)); return *this;}
63
65
69 inline const Aws::Vector<FlowNodeInput>& GetInputs() const { return m_inputs; }
70 inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
71 template<typename InputsT = Aws::Vector<FlowNodeInput>>
72 void SetInputs(InputsT&& value) { m_inputsHasBeenSet = true; m_inputs = std::forward<InputsT>(value); }
73 template<typename InputsT = Aws::Vector<FlowNodeInput>>
74 FlowNode& WithInputs(InputsT&& value) { SetInputs(std::forward<InputsT>(value)); return *this;}
75 template<typename InputsT = FlowNodeInput>
76 FlowNode& AddInputs(InputsT&& value) { m_inputsHasBeenSet = true; m_inputs.emplace_back(std::forward<InputsT>(value)); return *this; }
78
80
83 inline const Aws::String& GetName() const { return m_name; }
84 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
85 template<typename NameT = Aws::String>
86 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
87 template<typename NameT = Aws::String>
88 FlowNode& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
90
92
96 inline const Aws::Vector<FlowNodeOutput>& GetOutputs() const { return m_outputs; }
97 inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
98 template<typename OutputsT = Aws::Vector<FlowNodeOutput>>
99 void SetOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs = std::forward<OutputsT>(value); }
100 template<typename OutputsT = Aws::Vector<FlowNodeOutput>>
101 FlowNode& WithOutputs(OutputsT&& value) { SetOutputs(std::forward<OutputsT>(value)); return *this;}
102 template<typename OutputsT = FlowNodeOutput>
103 FlowNode& AddOutputs(OutputsT&& value) { m_outputsHasBeenSet = true; m_outputs.emplace_back(std::forward<OutputsT>(value)); return *this; }
105
107
112 inline FlowNodeType GetType() const { return m_type; }
113 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
114 inline void SetType(FlowNodeType value) { m_typeHasBeenSet = true; m_type = value; }
115 inline FlowNode& WithType(FlowNodeType value) { SetType(value); return *this;}
117 private:
118
119 std::shared_ptr<FlowNodeConfiguration> m_configuration;
120 bool m_configurationHasBeenSet = false;
121
123 bool m_inputsHasBeenSet = false;
124
125 Aws::String m_name;
126 bool m_nameHasBeenSet = false;
127
129 bool m_outputsHasBeenSet = false;
130
132 bool m_typeHasBeenSet = false;
133 };
134
135} // namespace Model
136} // namespace BedrockAgent
137} // namespace Aws
const FlowNodeConfiguration & GetConfiguration() const
Definition FlowNode.h:51
const Aws::String & GetName() const
Definition FlowNode.h:83
void SetInputs(InputsT &&value)
Definition FlowNode.h:72
void SetConfiguration(ConfigurationT &&value)
Definition FlowNode.h:56
FlowNode & AddInputs(InputsT &&value)
Definition FlowNode.h:76
FlowNode & WithOutputs(OutputsT &&value)
Definition FlowNode.h:101
FlowNodeType GetType() const
Definition FlowNode.h:112
void SetOutputs(OutputsT &&value)
Definition FlowNode.h:99
void SetType(FlowNodeType value)
Definition FlowNode.h:114
AWS_BEDROCKAGENT_API FlowNode & operator=(Aws::Utils::Json::JsonView jsonValue)
FlowNode & WithName(NameT &&value)
Definition FlowNode.h:88
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_BEDROCKAGENT_API FlowNode()=default
const Aws::Vector< FlowNodeInput > & GetInputs() const
Definition FlowNode.h:69
const Aws::Vector< FlowNodeOutput > & GetOutputs() const
Definition FlowNode.h:96
FlowNode & WithInputs(InputsT &&value)
Definition FlowNode.h:74
FlowNode & AddOutputs(OutputsT &&value)
Definition FlowNode.h:103
FlowNode & WithType(FlowNodeType value)
Definition FlowNode.h:115
void SetName(NameT &&value)
Definition FlowNode.h:86
AWS_BEDROCKAGENT_API FlowNode(Aws::Utils::Json::JsonView jsonValue)
FlowNode & WithConfiguration(ConfigurationT &&value)
Definition FlowNode.h:61
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue