7#include <aws/workmail/WorkMail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/workmail/model/AvailabilityProviderType.h>
10#include <aws/workmail/model/RedactedEwsAvailabilityProvider.h>
11#include <aws/workmail/model/LambdaAvailabilityProvider.h>
12#include <aws/core/utils/DateTime.h>
51 template<
typename DomainNameT = Aws::String>
52 void SetDomainName(DomainNameT&& value) { m_domainNameHasBeenSet =
true; m_domainName = std::forward<DomainNameT>(value); }
53 template<
typename DomainNameT = Aws::String>
74 template<
typename EwsProv
iderT = RedactedEwsAvailabilityProv
ider>
75 void SetEwsProvider(EwsProviderT&& value) { m_ewsProviderHasBeenSet =
true; m_ewsProvider = std::forward<EwsProviderT>(value); }
76 template<
typename EwsProv
iderT = RedactedEwsAvailabilityProv
ider>
87 template<
typename LambdaProv
iderT = LambdaAvailabilityProv
ider>
88 void SetLambdaProvider(LambdaProviderT&& value) { m_lambdaProviderHasBeenSet =
true; m_lambdaProvider = std::forward<LambdaProviderT>(value); }
89 template<
typename LambdaProv
iderT = LambdaAvailabilityProv
ider>
99 template<
typename DateCreatedT = Aws::Utils::DateTime>
100 void SetDateCreated(DateCreatedT&& value) { m_dateCreatedHasBeenSet =
true; m_dateCreated = std::forward<DateCreatedT>(value); }
101 template<
typename DateCreatedT = Aws::Utils::DateTime>
112 template<
typename DateModifiedT = Aws::Utils::DateTime>
113 void SetDateModified(DateModifiedT&& value) { m_dateModifiedHasBeenSet =
true; m_dateModified = std::forward<DateModifiedT>(value); }
114 template<
typename DateModifiedT = Aws::Utils::DateTime>
120 bool m_domainNameHasBeenSet =
false;
123 bool m_providerTypeHasBeenSet =
false;
125 RedactedEwsAvailabilityProvider m_ewsProvider;
126 bool m_ewsProviderHasBeenSet =
false;
128 LambdaAvailabilityProvider m_lambdaProvider;
129 bool m_lambdaProviderHasBeenSet =
false;
132 bool m_dateCreatedHasBeenSet =
false;
135 bool m_dateModifiedHasBeenSet =
false;
AvailabilityConfiguration & WithDomainName(DomainNameT &&value)
bool ProviderTypeHasBeenSet() const
bool LambdaProviderHasBeenSet() const
void SetLambdaProvider(LambdaProviderT &&value)
AWS_WORKMAIL_API AvailabilityConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetDomainName() const
void SetDomainName(DomainNameT &&value)
const RedactedEwsAvailabilityProvider & GetEwsProvider() const
bool DomainNameHasBeenSet() const
void SetDateCreated(DateCreatedT &&value)
AWS_WORKMAIL_API AvailabilityConfiguration(Aws::Utils::Json::JsonView jsonValue)
AvailabilityConfiguration & WithEwsProvider(EwsProviderT &&value)
AvailabilityProviderType GetProviderType() const
AvailabilityConfiguration & WithLambdaProvider(LambdaProviderT &&value)
bool DateModifiedHasBeenSet() const
void SetProviderType(AvailabilityProviderType value)
void SetEwsProvider(EwsProviderT &&value)
const Aws::Utils::DateTime & GetDateCreated() const
AvailabilityConfiguration & WithDateModified(DateModifiedT &&value)
AvailabilityConfiguration & WithDateCreated(DateCreatedT &&value)
const LambdaAvailabilityProvider & GetLambdaProvider() const
AWS_WORKMAIL_API AvailabilityConfiguration()=default
bool DateCreatedHasBeenSet() const
const Aws::Utils::DateTime & GetDateModified() const
AvailabilityConfiguration & WithProviderType(AvailabilityProviderType value)
void SetDateModified(DateModifiedT &&value)
bool EwsProviderHasBeenSet() const
AWS_WORKMAIL_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue