AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
CostCategoryRule.h
1
6#pragma once
7#include <aws/ce/CostExplorer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ce/model/Expression.h>
10#include <aws/ce/model/CostCategoryInheritedValueDimension.h>
11#include <aws/ce/model/CostCategoryRuleType.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace CostExplorer
25{
26namespace Model
27{
28
37 {
38 public:
39 AWS_COSTEXPLORER_API CostCategoryRule() = default;
40 AWS_COSTEXPLORER_API CostCategoryRule(Aws::Utils::Json::JsonView jsonValue);
41 AWS_COSTEXPLORER_API CostCategoryRule& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
47 inline const Aws::String& GetValue() const { return m_value; }
48 inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; }
49 template<typename ValueT = Aws::String>
50 void SetValue(ValueT&& value) { m_valueHasBeenSet = true; m_value = std::forward<ValueT>(value); }
51 template<typename ValueT = Aws::String>
52 CostCategoryRule& WithValue(ValueT&& value) { SetValue(std::forward<ValueT>(value)); return *this;}
54
56
70 inline const Expression& GetRule() const { return m_rule; }
71 inline bool RuleHasBeenSet() const { return m_ruleHasBeenSet; }
72 template<typename RuleT = Expression>
73 void SetRule(RuleT&& value) { m_ruleHasBeenSet = true; m_rule = std::forward<RuleT>(value); }
74 template<typename RuleT = Expression>
75 CostCategoryRule& WithRule(RuleT&& value) { SetRule(std::forward<RuleT>(value)); return *this;}
77
79
83 inline const CostCategoryInheritedValueDimension& GetInheritedValue() const { return m_inheritedValue; }
84 inline bool InheritedValueHasBeenSet() const { return m_inheritedValueHasBeenSet; }
85 template<typename InheritedValueT = CostCategoryInheritedValueDimension>
86 void SetInheritedValue(InheritedValueT&& value) { m_inheritedValueHasBeenSet = true; m_inheritedValue = std::forward<InheritedValueT>(value); }
87 template<typename InheritedValueT = CostCategoryInheritedValueDimension>
88 CostCategoryRule& WithInheritedValue(InheritedValueT&& value) { SetInheritedValue(std::forward<InheritedValueT>(value)); return *this;}
90
92
103 inline CostCategoryRuleType GetType() const { return m_type; }
104 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
105 inline void SetType(CostCategoryRuleType value) { m_typeHasBeenSet = true; m_type = value; }
106 inline CostCategoryRule& WithType(CostCategoryRuleType value) { SetType(value); return *this;}
108 private:
109
110 Aws::String m_value;
111 bool m_valueHasBeenSet = false;
112
113 Expression m_rule;
114 bool m_ruleHasBeenSet = false;
115
117 bool m_inheritedValueHasBeenSet = false;
118
120 bool m_typeHasBeenSet = false;
121 };
122
123} // namespace Model
124} // namespace CostExplorer
125} // namespace Aws
const CostCategoryInheritedValueDimension & GetInheritedValue() const
AWS_COSTEXPLORER_API CostCategoryRule & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTEXPLORER_API CostCategoryRule()=default
CostCategoryRule & WithType(CostCategoryRuleType value)
CostCategoryRule & WithRule(RuleT &&value)
AWS_COSTEXPLORER_API CostCategoryRule(Aws::Utils::Json::JsonView jsonValue)
AWS_COSTEXPLORER_API Aws::Utils::Json::JsonValue Jsonize() const
CostCategoryRule & WithValue(ValueT &&value)
CostCategoryRule & WithInheritedValue(InheritedValueT &&value)
void SetInheritedValue(InheritedValueT &&value)
void SetType(CostCategoryRuleType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue