AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
DirectoryConfig.h
1
6#pragma once
7#include <aws/appstream/AppStream_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/appstream/model/ServiceAccountCredentials.h>
11#include <aws/core/utils/DateTime.h>
12#include <aws/appstream/model/CertificateBasedAuthProperties.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace AppStream
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_APPSTREAM_API DirectoryConfig() = default;
40 AWS_APPSTREAM_API DirectoryConfig(Aws::Utils::Json::JsonView jsonValue);
42 AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
50 inline const Aws::String& GetDirectoryName() const { return m_directoryName; }
51 inline bool DirectoryNameHasBeenSet() const { return m_directoryNameHasBeenSet; }
52 template<typename DirectoryNameT = Aws::String>
53 void SetDirectoryName(DirectoryNameT&& value) { m_directoryNameHasBeenSet = true; m_directoryName = std::forward<DirectoryNameT>(value); }
54 template<typename DirectoryNameT = Aws::String>
55 DirectoryConfig& WithDirectoryName(DirectoryNameT&& value) { SetDirectoryName(std::forward<DirectoryNameT>(value)); return *this;}
57
59
63 inline const Aws::Vector<Aws::String>& GetOrganizationalUnitDistinguishedNames() const { return m_organizationalUnitDistinguishedNames; }
64 inline bool OrganizationalUnitDistinguishedNamesHasBeenSet() const { return m_organizationalUnitDistinguishedNamesHasBeenSet; }
65 template<typename OrganizationalUnitDistinguishedNamesT = Aws::Vector<Aws::String>>
66 void SetOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT&& value) { m_organizationalUnitDistinguishedNamesHasBeenSet = true; m_organizationalUnitDistinguishedNames = std::forward<OrganizationalUnitDistinguishedNamesT>(value); }
67 template<typename OrganizationalUnitDistinguishedNamesT = Aws::Vector<Aws::String>>
68 DirectoryConfig& WithOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT&& value) { SetOrganizationalUnitDistinguishedNames(std::forward<OrganizationalUnitDistinguishedNamesT>(value)); return *this;}
69 template<typename OrganizationalUnitDistinguishedNamesT = Aws::String>
70 DirectoryConfig& AddOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT&& value) { m_organizationalUnitDistinguishedNamesHasBeenSet = true; m_organizationalUnitDistinguishedNames.emplace_back(std::forward<OrganizationalUnitDistinguishedNamesT>(value)); return *this; }
72
74
78 inline const ServiceAccountCredentials& GetServiceAccountCredentials() const { return m_serviceAccountCredentials; }
79 inline bool ServiceAccountCredentialsHasBeenSet() const { return m_serviceAccountCredentialsHasBeenSet; }
80 template<typename ServiceAccountCredentialsT = ServiceAccountCredentials>
81 void SetServiceAccountCredentials(ServiceAccountCredentialsT&& value) { m_serviceAccountCredentialsHasBeenSet = true; m_serviceAccountCredentials = std::forward<ServiceAccountCredentialsT>(value); }
82 template<typename ServiceAccountCredentialsT = ServiceAccountCredentials>
83 DirectoryConfig& WithServiceAccountCredentials(ServiceAccountCredentialsT&& value) { SetServiceAccountCredentials(std::forward<ServiceAccountCredentialsT>(value)); return *this;}
85
87
90 inline const Aws::Utils::DateTime& GetCreatedTime() const { return m_createdTime; }
91 inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; }
92 template<typename CreatedTimeT = Aws::Utils::DateTime>
93 void SetCreatedTime(CreatedTimeT&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::forward<CreatedTimeT>(value); }
94 template<typename CreatedTimeT = Aws::Utils::DateTime>
95 DirectoryConfig& WithCreatedTime(CreatedTimeT&& value) { SetCreatedTime(std::forward<CreatedTimeT>(value)); return *this;}
97
99
110 inline const CertificateBasedAuthProperties& GetCertificateBasedAuthProperties() const { return m_certificateBasedAuthProperties; }
111 inline bool CertificateBasedAuthPropertiesHasBeenSet() const { return m_certificateBasedAuthPropertiesHasBeenSet; }
112 template<typename CertificateBasedAuthPropertiesT = CertificateBasedAuthProperties>
113 void SetCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT&& value) { m_certificateBasedAuthPropertiesHasBeenSet = true; m_certificateBasedAuthProperties = std::forward<CertificateBasedAuthPropertiesT>(value); }
114 template<typename CertificateBasedAuthPropertiesT = CertificateBasedAuthProperties>
115 DirectoryConfig& WithCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT&& value) { SetCertificateBasedAuthProperties(std::forward<CertificateBasedAuthPropertiesT>(value)); return *this;}
117 private:
118
119 Aws::String m_directoryName;
120 bool m_directoryNameHasBeenSet = false;
121
122 Aws::Vector<Aws::String> m_organizationalUnitDistinguishedNames;
123 bool m_organizationalUnitDistinguishedNamesHasBeenSet = false;
124
125 ServiceAccountCredentials m_serviceAccountCredentials;
126 bool m_serviceAccountCredentialsHasBeenSet = false;
127
128 Aws::Utils::DateTime m_createdTime{};
129 bool m_createdTimeHasBeenSet = false;
130
131 CertificateBasedAuthProperties m_certificateBasedAuthProperties;
132 bool m_certificateBasedAuthPropertiesHasBeenSet = false;
133 };
134
135} // namespace Model
136} // namespace AppStream
137} // namespace Aws
DirectoryConfig & WithDirectoryName(DirectoryNameT &&value)
DirectoryConfig & WithServiceAccountCredentials(ServiceAccountCredentialsT &&value)
const ServiceAccountCredentials & GetServiceAccountCredentials() const
DirectoryConfig & WithCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT &&value)
void SetServiceAccountCredentials(ServiceAccountCredentialsT &&value)
void SetCreatedTime(CreatedTimeT &&value)
void SetCertificateBasedAuthProperties(CertificateBasedAuthPropertiesT &&value)
AWS_APPSTREAM_API DirectoryConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
const CertificateBasedAuthProperties & GetCertificateBasedAuthProperties() const
const Aws::Utils::DateTime & GetCreatedTime() const
void SetDirectoryName(DirectoryNameT &&value)
AWS_APPSTREAM_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_APPSTREAM_API DirectoryConfig()=default
AWS_APPSTREAM_API DirectoryConfig(Aws::Utils::Json::JsonView jsonValue)
DirectoryConfig & WithCreatedTime(CreatedTimeT &&value)
const Aws::String & GetDirectoryName() const
DirectoryConfig & WithOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT &&value)
void SetOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT &&value)
DirectoryConfig & AddOrganizationalUnitDistinguishedNames(OrganizationalUnitDistinguishedNamesT &&value)
const Aws::Vector< Aws::String > & GetOrganizationalUnitDistinguishedNames() 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