AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
DeploymentTarget.h
1
6#pragma once
7#include <aws/codedeploy/CodeDeploy_EXPORTS.h>
8#include <aws/codedeploy/model/CloudFormationTarget.h>
9#include <aws/codedeploy/model/DeploymentTargetType.h>
10#include <aws/codedeploy/model/ECSTarget.h>
11#include <aws/codedeploy/model/InstanceTarget.h>
12#include <aws/codedeploy/model/LambdaTarget.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace CodeDeploy {
24namespace Model {
25
32 public:
33 AWS_CODEDEPLOY_API DeploymentTarget() = default;
34 AWS_CODEDEPLOY_API DeploymentTarget(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline DeploymentTargetType GetDeploymentTargetType() const { return m_deploymentTargetType; }
44 inline bool DeploymentTargetTypeHasBeenSet() const { return m_deploymentTargetTypeHasBeenSet; }
46 m_deploymentTargetTypeHasBeenSet = true;
47 m_deploymentTargetType = value;
48 }
51 return *this;
52 }
54
56
60 inline const InstanceTarget& GetInstanceTarget() const { return m_instanceTarget; }
61 inline bool InstanceTargetHasBeenSet() const { return m_instanceTargetHasBeenSet; }
62 template <typename InstanceTargetT = InstanceTarget>
63 void SetInstanceTarget(InstanceTargetT&& value) {
64 m_instanceTargetHasBeenSet = true;
65 m_instanceTarget = std::forward<InstanceTargetT>(value);
66 }
67 template <typename InstanceTargetT = InstanceTarget>
68 DeploymentTarget& WithInstanceTarget(InstanceTargetT&& value) {
69 SetInstanceTarget(std::forward<InstanceTargetT>(value));
70 return *this;
71 }
73
75
79 inline const LambdaTarget& GetLambdaTarget() const { return m_lambdaTarget; }
80 inline bool LambdaTargetHasBeenSet() const { return m_lambdaTargetHasBeenSet; }
81 template <typename LambdaTargetT = LambdaTarget>
82 void SetLambdaTarget(LambdaTargetT&& value) {
83 m_lambdaTargetHasBeenSet = true;
84 m_lambdaTarget = std::forward<LambdaTargetT>(value);
85 }
86 template <typename LambdaTargetT = LambdaTarget>
87 DeploymentTarget& WithLambdaTarget(LambdaTargetT&& value) {
88 SetLambdaTarget(std::forward<LambdaTargetT>(value));
89 return *this;
90 }
92
94
98 inline const ECSTarget& GetEcsTarget() const { return m_ecsTarget; }
99 inline bool EcsTargetHasBeenSet() const { return m_ecsTargetHasBeenSet; }
100 template <typename EcsTargetT = ECSTarget>
101 void SetEcsTarget(EcsTargetT&& value) {
102 m_ecsTargetHasBeenSet = true;
103 m_ecsTarget = std::forward<EcsTargetT>(value);
104 }
105 template <typename EcsTargetT = ECSTarget>
106 DeploymentTarget& WithEcsTarget(EcsTargetT&& value) {
107 SetEcsTarget(std::forward<EcsTargetT>(value));
108 return *this;
109 }
111
113
114 inline const CloudFormationTarget& GetCloudFormationTarget() const { return m_cloudFormationTarget; }
115 inline bool CloudFormationTargetHasBeenSet() const { return m_cloudFormationTargetHasBeenSet; }
116 template <typename CloudFormationTargetT = CloudFormationTarget>
117 void SetCloudFormationTarget(CloudFormationTargetT&& value) {
118 m_cloudFormationTargetHasBeenSet = true;
119 m_cloudFormationTarget = std::forward<CloudFormationTargetT>(value);
120 }
121 template <typename CloudFormationTargetT = CloudFormationTarget>
122 DeploymentTarget& WithCloudFormationTarget(CloudFormationTargetT&& value) {
123 SetCloudFormationTarget(std::forward<CloudFormationTargetT>(value));
124 return *this;
125 }
127 private:
129
130 InstanceTarget m_instanceTarget;
131
132 LambdaTarget m_lambdaTarget;
133
134 ECSTarget m_ecsTarget;
135
136 CloudFormationTarget m_cloudFormationTarget;
137 bool m_deploymentTargetTypeHasBeenSet = false;
138 bool m_instanceTargetHasBeenSet = false;
139 bool m_lambdaTargetHasBeenSet = false;
140 bool m_ecsTargetHasBeenSet = false;
141 bool m_cloudFormationTargetHasBeenSet = false;
142};
143
144} // namespace Model
145} // namespace CodeDeploy
146} // namespace Aws
DeploymentTarget & WithCloudFormationTarget(CloudFormationTargetT &&value)
const InstanceTarget & GetInstanceTarget() const
AWS_CODEDEPLOY_API DeploymentTarget & operator=(Aws::Utils::Json::JsonView jsonValue)
const CloudFormationTarget & GetCloudFormationTarget() const
void SetInstanceTarget(InstanceTargetT &&value)
AWS_CODEDEPLOY_API Aws::Utils::Json::JsonValue Jsonize() const
DeploymentTarget & WithLambdaTarget(LambdaTargetT &&value)
AWS_CODEDEPLOY_API DeploymentTarget()=default
DeploymentTarget & WithInstanceTarget(InstanceTargetT &&value)
AWS_CODEDEPLOY_API DeploymentTarget(Aws::Utils::Json::JsonView jsonValue)
void SetDeploymentTargetType(DeploymentTargetType value)
void SetCloudFormationTarget(CloudFormationTargetT &&value)
DeploymentTarget & WithDeploymentTargetType(DeploymentTargetType value)
void SetLambdaTarget(LambdaTargetT &&value)
const LambdaTarget & GetLambdaTarget() const
DeploymentTarget & WithEcsTarget(EcsTargetT &&value)
DeploymentTargetType GetDeploymentTargetType() const
Aws::Utils::Json::JsonValue JsonValue