AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
Application.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/ApplicationType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Connect {
22namespace Model {
23
32 public:
33 AWS_CONNECT_API Application() = default;
34 AWS_CONNECT_API Application(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline const Aws::String& GetNamespace() const { return m_namespace; }
43 inline bool NamespaceHasBeenSet() const { return m_namespaceHasBeenSet; }
44 template <typename NamespaceT = Aws::String>
45 void SetNamespace(NamespaceT&& value) {
46 m_namespaceHasBeenSet = true;
47 m_namespace = std::forward<NamespaceT>(value);
48 }
49 template <typename NamespaceT = Aws::String>
50 Application& WithNamespace(NamespaceT&& value) {
51 SetNamespace(std::forward<NamespaceT>(value));
52 return *this;
53 }
55
57
62 inline const Aws::Vector<Aws::String>& GetApplicationPermissions() const { return m_applicationPermissions; }
63 inline bool ApplicationPermissionsHasBeenSet() const { return m_applicationPermissionsHasBeenSet; }
64 template <typename ApplicationPermissionsT = Aws::Vector<Aws::String>>
65 void SetApplicationPermissions(ApplicationPermissionsT&& value) {
66 m_applicationPermissionsHasBeenSet = true;
67 m_applicationPermissions = std::forward<ApplicationPermissionsT>(value);
68 }
69 template <typename ApplicationPermissionsT = Aws::Vector<Aws::String>>
70 Application& WithApplicationPermissions(ApplicationPermissionsT&& value) {
71 SetApplicationPermissions(std::forward<ApplicationPermissionsT>(value));
72 return *this;
73 }
74 template <typename ApplicationPermissionsT = Aws::String>
75 Application& AddApplicationPermissions(ApplicationPermissionsT&& value) {
76 m_applicationPermissionsHasBeenSet = true;
77 m_applicationPermissions.emplace_back(std::forward<ApplicationPermissionsT>(value));
78 return *this;
79 }
81
83
86 inline ApplicationType GetType() const { return m_type; }
87 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
88 inline void SetType(ApplicationType value) {
89 m_typeHasBeenSet = true;
90 m_type = value;
91 }
93 SetType(value);
94 return *this;
95 }
97 private:
98 Aws::String m_namespace;
99
100 Aws::Vector<Aws::String> m_applicationPermissions;
101
103 bool m_namespaceHasBeenSet = false;
104 bool m_applicationPermissionsHasBeenSet = false;
105 bool m_typeHasBeenSet = false;
106};
107
108} // namespace Model
109} // namespace Connect
110} // namespace Aws
Application & AddApplicationPermissions(ApplicationPermissionsT &&value)
Definition Application.h:75
Application & WithNamespace(NamespaceT &&value)
Definition Application.h:50
void SetNamespace(NamespaceT &&value)
Definition Application.h:45
bool ApplicationPermissionsHasBeenSet() const
Definition Application.h:63
const Aws::Vector< Aws::String > & GetApplicationPermissions() const
Definition Application.h:62
void SetType(ApplicationType value)
Definition Application.h:88
AWS_CONNECT_API Application(Aws::Utils::Json::JsonView jsonValue)
Application & WithType(ApplicationType value)
Definition Application.h:92
const Aws::String & GetNamespace() const
Definition Application.h:42
AWS_CONNECT_API Application & operator=(Aws::Utils::Json::JsonView jsonValue)
Application & WithApplicationPermissions(ApplicationPermissionsT &&value)
Definition Application.h:70
ApplicationType GetType() const
Definition Application.h:86
void SetApplicationPermissions(ApplicationPermissionsT &&value)
Definition Application.h:65
AWS_CONNECT_API Application()=default
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue