AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
CreateScalingPlanRequest.h
1
6#pragma once
7#include <aws/autoscaling-plans/AutoScalingPlans_EXPORTS.h>
8#include <aws/autoscaling-plans/AutoScalingPlansRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/autoscaling-plans/model/ApplicationSource.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/autoscaling-plans/model/ScalingInstruction.h>
13#include <utility>
14
15namespace Aws
16{
17namespace AutoScalingPlans
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_AUTOSCALINGPLANS_API CreateScalingPlanRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateScalingPlan"; }
34
35 AWS_AUTOSCALINGPLANS_API Aws::String SerializePayload() const override;
36
37 AWS_AUTOSCALINGPLANS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
38
39
41
45 inline const Aws::String& GetScalingPlanName() const { return m_scalingPlanName; }
46 inline bool ScalingPlanNameHasBeenSet() const { return m_scalingPlanNameHasBeenSet; }
47 template<typename ScalingPlanNameT = Aws::String>
48 void SetScalingPlanName(ScalingPlanNameT&& value) { m_scalingPlanNameHasBeenSet = true; m_scalingPlanName = std::forward<ScalingPlanNameT>(value); }
49 template<typename ScalingPlanNameT = Aws::String>
50 CreateScalingPlanRequest& WithScalingPlanName(ScalingPlanNameT&& value) { SetScalingPlanName(std::forward<ScalingPlanNameT>(value)); return *this;}
52
54
60 inline const ApplicationSource& GetApplicationSource() const { return m_applicationSource; }
61 inline bool ApplicationSourceHasBeenSet() const { return m_applicationSourceHasBeenSet; }
62 template<typename ApplicationSourceT = ApplicationSource>
63 void SetApplicationSource(ApplicationSourceT&& value) { m_applicationSourceHasBeenSet = true; m_applicationSource = std::forward<ApplicationSourceT>(value); }
64 template<typename ApplicationSourceT = ApplicationSource>
65 CreateScalingPlanRequest& WithApplicationSource(ApplicationSourceT&& value) { SetApplicationSource(std::forward<ApplicationSourceT>(value)); return *this;}
67
69
74 inline const Aws::Vector<ScalingInstruction>& GetScalingInstructions() const { return m_scalingInstructions; }
75 inline bool ScalingInstructionsHasBeenSet() const { return m_scalingInstructionsHasBeenSet; }
76 template<typename ScalingInstructionsT = Aws::Vector<ScalingInstruction>>
77 void SetScalingInstructions(ScalingInstructionsT&& value) { m_scalingInstructionsHasBeenSet = true; m_scalingInstructions = std::forward<ScalingInstructionsT>(value); }
78 template<typename ScalingInstructionsT = Aws::Vector<ScalingInstruction>>
79 CreateScalingPlanRequest& WithScalingInstructions(ScalingInstructionsT&& value) { SetScalingInstructions(std::forward<ScalingInstructionsT>(value)); return *this;}
80 template<typename ScalingInstructionsT = ScalingInstruction>
81 CreateScalingPlanRequest& AddScalingInstructions(ScalingInstructionsT&& value) { m_scalingInstructionsHasBeenSet = true; m_scalingInstructions.emplace_back(std::forward<ScalingInstructionsT>(value)); return *this; }
83 private:
84
85 Aws::String m_scalingPlanName;
86 bool m_scalingPlanNameHasBeenSet = false;
87
88 ApplicationSource m_applicationSource;
89 bool m_applicationSourceHasBeenSet = false;
90
91 Aws::Vector<ScalingInstruction> m_scalingInstructions;
92 bool m_scalingInstructionsHasBeenSet = false;
93 };
94
95} // namespace Model
96} // namespace AutoScalingPlans
97} // namespace Aws
CreateScalingPlanRequest & AddScalingInstructions(ScalingInstructionsT &&value)
CreateScalingPlanRequest & WithScalingInstructions(ScalingInstructionsT &&value)
AWS_AUTOSCALINGPLANS_API CreateScalingPlanRequest()=default
AWS_AUTOSCALINGPLANS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< ScalingInstruction > & GetScalingInstructions() const
CreateScalingPlanRequest & WithScalingPlanName(ScalingPlanNameT &&value)
AWS_AUTOSCALINGPLANS_API Aws::String SerializePayload() const override
CreateScalingPlanRequest & WithApplicationSource(ApplicationSourceT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector