AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
TargetGroupPairInfo.h
1
6#pragma once
7#include <aws/codedeploy/CodeDeploy_EXPORTS.h>
8#include <aws/codedeploy/model/TargetGroupInfo.h>
9#include <aws/codedeploy/model/TrafficRoute.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CodeDeploy {
22namespace Model {
23
32 public:
33 AWS_CODEDEPLOY_API TargetGroupPairInfo() = default;
34 AWS_CODEDEPLOY_API TargetGroupPairInfo(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
44 inline const Aws::Vector<TargetGroupInfo>& GetTargetGroups() const { return m_targetGroups; }
45 inline bool TargetGroupsHasBeenSet() const { return m_targetGroupsHasBeenSet; }
46 template <typename TargetGroupsT = Aws::Vector<TargetGroupInfo>>
47 void SetTargetGroups(TargetGroupsT&& value) {
48 m_targetGroupsHasBeenSet = true;
49 m_targetGroups = std::forward<TargetGroupsT>(value);
50 }
51 template <typename TargetGroupsT = Aws::Vector<TargetGroupInfo>>
52 TargetGroupPairInfo& WithTargetGroups(TargetGroupsT&& value) {
53 SetTargetGroups(std::forward<TargetGroupsT>(value));
54 return *this;
55 }
56 template <typename TargetGroupsT = TargetGroupInfo>
57 TargetGroupPairInfo& AddTargetGroups(TargetGroupsT&& value) {
58 m_targetGroupsHasBeenSet = true;
59 m_targetGroups.emplace_back(std::forward<TargetGroupsT>(value));
60 return *this;
61 }
63
65
69 inline const TrafficRoute& GetProdTrafficRoute() const { return m_prodTrafficRoute; }
70 inline bool ProdTrafficRouteHasBeenSet() const { return m_prodTrafficRouteHasBeenSet; }
71 template <typename ProdTrafficRouteT = TrafficRoute>
72 void SetProdTrafficRoute(ProdTrafficRouteT&& value) {
73 m_prodTrafficRouteHasBeenSet = true;
74 m_prodTrafficRoute = std::forward<ProdTrafficRouteT>(value);
75 }
76 template <typename ProdTrafficRouteT = TrafficRoute>
77 TargetGroupPairInfo& WithProdTrafficRoute(ProdTrafficRouteT&& value) {
78 SetProdTrafficRoute(std::forward<ProdTrafficRouteT>(value));
79 return *this;
80 }
82
84
89 inline const TrafficRoute& GetTestTrafficRoute() const { return m_testTrafficRoute; }
90 inline bool TestTrafficRouteHasBeenSet() const { return m_testTrafficRouteHasBeenSet; }
91 template <typename TestTrafficRouteT = TrafficRoute>
92 void SetTestTrafficRoute(TestTrafficRouteT&& value) {
93 m_testTrafficRouteHasBeenSet = true;
94 m_testTrafficRoute = std::forward<TestTrafficRouteT>(value);
95 }
96 template <typename TestTrafficRouteT = TrafficRoute>
97 TargetGroupPairInfo& WithTestTrafficRoute(TestTrafficRouteT&& value) {
98 SetTestTrafficRoute(std::forward<TestTrafficRouteT>(value));
99 return *this;
100 }
102 private:
103 Aws::Vector<TargetGroupInfo> m_targetGroups;
104
105 TrafficRoute m_prodTrafficRoute;
106
107 TrafficRoute m_testTrafficRoute;
108 bool m_targetGroupsHasBeenSet = false;
109 bool m_prodTrafficRouteHasBeenSet = false;
110 bool m_testTrafficRouteHasBeenSet = false;
111};
112
113} // namespace Model
114} // namespace CodeDeploy
115} // namespace Aws
AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const
const TrafficRoute & GetProdTrafficRoute() const
void SetTestTrafficRoute(TestTrafficRouteT &&value)
AWS_CODEDEPLOY_API TargetGroupPairInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_CODEDEPLOY_API TargetGroupPairInfo(Aws::Utils::Json::JsonView jsonValue)
AWS_CODEDEPLOY_API TargetGroupPairInfo()=default
TargetGroupPairInfo & WithTargetGroups(TargetGroupsT &&value)
TargetGroupPairInfo & WithTestTrafficRoute(TestTrafficRouteT &&value)
const Aws::Vector< TargetGroupInfo > & GetTargetGroups() const
TargetGroupPairInfo & WithProdTrafficRoute(ProdTrafficRouteT &&value)
TargetGroupPairInfo & AddTargetGroups(TargetGroupsT &&value)
void SetProdTrafficRoute(ProdTrafficRouteT &&value)
const TrafficRoute & GetTestTrafficRoute() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue