AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
FairsharePolicy.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/batch/model/ShareAttributes.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Batch
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_BATCH_API FairsharePolicy() = default;
38 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
52 inline int GetShareDecaySeconds() const { return m_shareDecaySeconds; }
53 inline bool ShareDecaySecondsHasBeenSet() const { return m_shareDecaySecondsHasBeenSet; }
54 inline void SetShareDecaySeconds(int value) { m_shareDecaySecondsHasBeenSet = true; m_shareDecaySeconds = value; }
55 inline FairsharePolicy& WithShareDecaySeconds(int value) { SetShareDecaySeconds(value); return *this;}
57
59
73 inline int GetComputeReservation() const { return m_computeReservation; }
74 inline bool ComputeReservationHasBeenSet() const { return m_computeReservationHasBeenSet; }
75 inline void SetComputeReservation(int value) { m_computeReservationHasBeenSet = true; m_computeReservation = value; }
76 inline FairsharePolicy& WithComputeReservation(int value) { SetComputeReservation(value); return *this;}
78
80
85 inline const Aws::Vector<ShareAttributes>& GetShareDistribution() const { return m_shareDistribution; }
86 inline bool ShareDistributionHasBeenSet() const { return m_shareDistributionHasBeenSet; }
87 template<typename ShareDistributionT = Aws::Vector<ShareAttributes>>
88 void SetShareDistribution(ShareDistributionT&& value) { m_shareDistributionHasBeenSet = true; m_shareDistribution = std::forward<ShareDistributionT>(value); }
89 template<typename ShareDistributionT = Aws::Vector<ShareAttributes>>
90 FairsharePolicy& WithShareDistribution(ShareDistributionT&& value) { SetShareDistribution(std::forward<ShareDistributionT>(value)); return *this;}
91 template<typename ShareDistributionT = ShareAttributes>
92 FairsharePolicy& AddShareDistribution(ShareDistributionT&& value) { m_shareDistributionHasBeenSet = true; m_shareDistribution.emplace_back(std::forward<ShareDistributionT>(value)); return *this; }
94 private:
95
96 int m_shareDecaySeconds{0};
97 bool m_shareDecaySecondsHasBeenSet = false;
98
99 int m_computeReservation{0};
100 bool m_computeReservationHasBeenSet = false;
101
102 Aws::Vector<ShareAttributes> m_shareDistribution;
103 bool m_shareDistributionHasBeenSet = false;
104 };
105
106} // namespace Model
107} // namespace Batch
108} // namespace Aws
FairsharePolicy & WithComputeReservation(int value)
AWS_BATCH_API FairsharePolicy(Aws::Utils::Json::JsonView jsonValue)
FairsharePolicy & WithShareDecaySeconds(int value)
FairsharePolicy & WithShareDistribution(ShareDistributionT &&value)
AWS_BATCH_API FairsharePolicy & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetShareDistribution(ShareDistributionT &&value)
FairsharePolicy & AddShareDistribution(ShareDistributionT &&value)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_BATCH_API FairsharePolicy()=default
const Aws::Vector< ShareAttributes > & GetShareDistribution() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue