AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
Service.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/support/Support_EXPORTS.h>
10#include <aws/support/model/Category.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Support {
22namespace Model {
23
30class Service {
31 public:
32 AWS_SUPPORT_API Service() = default;
33 AWS_SUPPORT_API Service(Aws::Utils::Json::JsonView jsonValue);
34 AWS_SUPPORT_API Service& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_SUPPORT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
43 inline const Aws::String& GetCode() const { return m_code; }
44 inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; }
45 template <typename CodeT = Aws::String>
46 void SetCode(CodeT&& value) {
47 m_codeHasBeenSet = true;
48 m_code = std::forward<CodeT>(value);
49 }
50 template <typename CodeT = Aws::String>
51 Service& WithCode(CodeT&& value) {
52 SetCode(std::forward<CodeT>(value));
53 return *this;
54 }
56
58
62 inline const Aws::String& GetName() const { return m_name; }
63 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
64 template <typename NameT = Aws::String>
65 void SetName(NameT&& value) {
66 m_nameHasBeenSet = true;
67 m_name = std::forward<NameT>(value);
68 }
69 template <typename NameT = Aws::String>
70 Service& WithName(NameT&& value) {
71 SetName(std::forward<NameT>(value));
72 return *this;
73 }
75
77
83 inline const Aws::Vector<Category>& GetCategories() const { return m_categories; }
84 inline bool CategoriesHasBeenSet() const { return m_categoriesHasBeenSet; }
85 template <typename CategoriesT = Aws::Vector<Category>>
86 void SetCategories(CategoriesT&& value) {
87 m_categoriesHasBeenSet = true;
88 m_categories = std::forward<CategoriesT>(value);
89 }
90 template <typename CategoriesT = Aws::Vector<Category>>
91 Service& WithCategories(CategoriesT&& value) {
92 SetCategories(std::forward<CategoriesT>(value));
93 return *this;
94 }
95 template <typename CategoriesT = Category>
96 Service& AddCategories(CategoriesT&& value) {
97 m_categoriesHasBeenSet = true;
98 m_categories.emplace_back(std::forward<CategoriesT>(value));
99 return *this;
100 }
102 private:
103 Aws::String m_code;
104
105 Aws::String m_name;
106
107 Aws::Vector<Category> m_categories;
108 bool m_codeHasBeenSet = false;
109 bool m_nameHasBeenSet = false;
110 bool m_categoriesHasBeenSet = false;
111};
112
113} // namespace Model
114} // namespace Support
115} // namespace Aws
Service & AddCategories(CategoriesT &&value)
Definition Service.h:96
void SetName(NameT &&value)
Definition Service.h:65
bool CodeHasBeenSet() const
Definition Service.h:44
AWS_SUPPORT_API Service & operator=(Aws::Utils::Json::JsonView jsonValue)
bool CategoriesHasBeenSet() const
Definition Service.h:84
void SetCode(CodeT &&value)
Definition Service.h:46
const Aws::String & GetName() const
Definition Service.h:62
AWS_SUPPORT_API Aws::Utils::Json::JsonValue Jsonize() const
Service & WithCode(CodeT &&value)
Definition Service.h:51
Service & WithName(NameT &&value)
Definition Service.h:70
bool NameHasBeenSet() const
Definition Service.h:63
AWS_SUPPORT_API Service(Aws::Utils::Json::JsonView jsonValue)
AWS_SUPPORT_API Service()=default
const Aws::String & GetCode() const
Definition Service.h:43
const Aws::Vector< Category > & GetCategories() const
Definition Service.h:83
Service & WithCategories(CategoriesT &&value)
Definition Service.h:91
void SetCategories(CategoriesT &&value)
Definition Service.h:86
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue