AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ServerlessTrack.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
10#include <aws/redshift-serverless/model/UpdateTarget.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace RedshiftServerless {
22namespace Model {
23
34 public:
35 AWS_REDSHIFTSERVERLESS_API ServerlessTrack() = default;
36 AWS_REDSHIFTSERVERLESS_API ServerlessTrack(Aws::Utils::Json::JsonView jsonValue);
37 AWS_REDSHIFTSERVERLESS_API ServerlessTrack& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
45 inline const Aws::String& GetTrackName() const { return m_trackName; }
46 inline bool TrackNameHasBeenSet() const { return m_trackNameHasBeenSet; }
47 template <typename TrackNameT = Aws::String>
48 void SetTrackName(TrackNameT&& value) {
49 m_trackNameHasBeenSet = true;
50 m_trackName = std::forward<TrackNameT>(value);
51 }
52 template <typename TrackNameT = Aws::String>
53 ServerlessTrack& WithTrackName(TrackNameT&& value) {
54 SetTrackName(std::forward<TrackNameT>(value));
55 return *this;
56 }
58
60
63 inline const Aws::Vector<UpdateTarget>& GetUpdateTargets() const { return m_updateTargets; }
64 inline bool UpdateTargetsHasBeenSet() const { return m_updateTargetsHasBeenSet; }
65 template <typename UpdateTargetsT = Aws::Vector<UpdateTarget>>
66 void SetUpdateTargets(UpdateTargetsT&& value) {
67 m_updateTargetsHasBeenSet = true;
68 m_updateTargets = std::forward<UpdateTargetsT>(value);
69 }
70 template <typename UpdateTargetsT = Aws::Vector<UpdateTarget>>
71 ServerlessTrack& WithUpdateTargets(UpdateTargetsT&& value) {
72 SetUpdateTargets(std::forward<UpdateTargetsT>(value));
73 return *this;
74 }
75 template <typename UpdateTargetsT = UpdateTarget>
76 ServerlessTrack& AddUpdateTargets(UpdateTargetsT&& value) {
77 m_updateTargetsHasBeenSet = true;
78 m_updateTargets.emplace_back(std::forward<UpdateTargetsT>(value));
79 return *this;
80 }
82
84
87 inline const Aws::String& GetWorkgroupVersion() const { return m_workgroupVersion; }
88 inline bool WorkgroupVersionHasBeenSet() const { return m_workgroupVersionHasBeenSet; }
89 template <typename WorkgroupVersionT = Aws::String>
90 void SetWorkgroupVersion(WorkgroupVersionT&& value) {
91 m_workgroupVersionHasBeenSet = true;
92 m_workgroupVersion = std::forward<WorkgroupVersionT>(value);
93 }
94 template <typename WorkgroupVersionT = Aws::String>
95 ServerlessTrack& WithWorkgroupVersion(WorkgroupVersionT&& value) {
96 SetWorkgroupVersion(std::forward<WorkgroupVersionT>(value));
97 return *this;
98 }
100 private:
101 Aws::String m_trackName;
102
103 Aws::Vector<UpdateTarget> m_updateTargets;
104
105 Aws::String m_workgroupVersion;
106 bool m_trackNameHasBeenSet = false;
107 bool m_updateTargetsHasBeenSet = false;
108 bool m_workgroupVersionHasBeenSet = false;
109};
110
111} // namespace Model
112} // namespace RedshiftServerless
113} // namespace Aws
AWS_REDSHIFTSERVERLESS_API ServerlessTrack(Aws::Utils::Json::JsonView jsonValue)
ServerlessTrack & AddUpdateTargets(UpdateTargetsT &&value)
AWS_REDSHIFTSERVERLESS_API ServerlessTrack & operator=(Aws::Utils::Json::JsonView jsonValue)
ServerlessTrack & WithWorkgroupVersion(WorkgroupVersionT &&value)
ServerlessTrack & WithTrackName(TrackNameT &&value)
AWS_REDSHIFTSERVERLESS_API ServerlessTrack()=default
void SetWorkgroupVersion(WorkgroupVersionT &&value)
const Aws::Vector< UpdateTarget > & GetUpdateTargets() const
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
ServerlessTrack & WithUpdateTargets(UpdateTargetsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue