7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/lightsail/Lightsail_EXPORTS.h>
11#include <aws/lightsail/model/CacheBehavior.h>
12#include <aws/lightsail/model/CacheBehaviorPerPath.h>
13#include <aws/lightsail/model/CacheSettings.h>
14#include <aws/lightsail/model/IpAddressType.h>
15#include <aws/lightsail/model/Origin.h>
16#include <aws/lightsail/model/ResourceLocation.h>
17#include <aws/lightsail/model/ResourceType.h>
18#include <aws/lightsail/model/Tag.h>
51 template <
typename NameT = Aws::String>
53 m_nameHasBeenSet =
true;
54 m_name = std::forward<NameT>(value);
56 template <
typename NameT = Aws::String>
58 SetName(std::forward<NameT>(value));
69 template <
typename ArnT = Aws::String>
71 m_arnHasBeenSet =
true;
72 m_arn = std::forward<ArnT>(value);
74 template <
typename ArnT = Aws::String>
76 SetArn(std::forward<ArnT>(value));
89 template <
typename SupportCodeT = Aws::String>
91 m_supportCodeHasBeenSet =
true;
92 m_supportCode = std::forward<SupportCodeT>(value);
94 template <
typename SupportCodeT = Aws::String>
107 template <
typename CreatedAtT = Aws::Utils::DateTime>
109 m_createdAtHasBeenSet =
true;
110 m_createdAt = std::forward<CreatedAtT>(value);
112 template <
typename CreatedAtT = Aws::Utils::DateTime>
129 template <
typename LocationT = ResourceLocation>
131 m_locationHasBeenSet =
true;
132 m_location = std::forward<LocationT>(value);
134 template <
typename LocationT = ResourceLocation>
148 m_resourceTypeHasBeenSet =
true;
149 m_resourceType = value;
163 template <
typename AlternativeDomainNamesT = Aws::Vector<Aws::String>>
165 m_alternativeDomainNamesHasBeenSet =
true;
166 m_alternativeDomainNames = std::forward<AlternativeDomainNamesT>(value);
168 template <
typename AlternativeDomainNamesT = Aws::Vector<Aws::String>>
173 template <
typename AlternativeDomainNamesT = Aws::String>
175 m_alternativeDomainNamesHasBeenSet =
true;
176 m_alternativeDomainNames.emplace_back(std::forward<AlternativeDomainNamesT>(value));
187 template <
typename StatusT = Aws::String>
189 m_statusHasBeenSet =
true;
190 m_status = std::forward<StatusT>(value);
192 template <
typename StatusT = Aws::String>
206 m_isEnabledHasBeenSet =
true;
221 template <
typename DomainNameT = Aws::String>
223 m_domainNameHasBeenSet =
true;
224 m_domainName = std::forward<DomainNameT>(value);
226 template <
typename DomainNameT = Aws::String>
239 template <
typename BundleIdT = Aws::String>
241 m_bundleIdHasBeenSet =
true;
242 m_bundleId = std::forward<BundleIdT>(value);
244 template <
typename BundleIdT = Aws::String>
257 template <
typename CertificateNameT = Aws::String>
259 m_certificateNameHasBeenSet =
true;
260 m_certificateName = std::forward<CertificateNameT>(value);
262 template <
typename CertificateNameT = Aws::String>
277 template <
typename OriginT = Origin>
279 m_originHasBeenSet =
true;
280 m_origin = std::forward<OriginT>(value);
282 template <
typename OriginT = Origin>
295 template <
typename OriginPublicDNST = Aws::String>
297 m_originPublicDNSHasBeenSet =
true;
298 m_originPublicDNS = std::forward<OriginPublicDNST>(value);
300 template <
typename OriginPublicDNST = Aws::String>
313 template <
typename DefaultCacheBehaviorT = CacheBehavior>
315 m_defaultCacheBehaviorHasBeenSet =
true;
316 m_defaultCacheBehavior = std::forward<DefaultCacheBehaviorT>(value);
318 template <
typename DefaultCacheBehaviorT = CacheBehavior>
331 template <
typename CacheBehaviorSettingsT = CacheSettings>
333 m_cacheBehaviorSettingsHasBeenSet =
true;
334 m_cacheBehaviorSettings = std::forward<CacheBehaviorSettingsT>(value);
336 template <
typename CacheBehaviorSettingsT = CacheSettings>
350 template <
typename CacheBehaviorsT = Aws::Vector<CacheBehaviorPerPath>>
352 m_cacheBehaviorsHasBeenSet =
true;
353 m_cacheBehaviors = std::forward<CacheBehaviorsT>(value);
355 template <
typename CacheBehaviorsT = Aws::Vector<CacheBehaviorPerPath>>
360 template <
typename CacheBehaviorsT = CacheBehaviorPerPath>
362 m_cacheBehaviorsHasBeenSet =
true;
363 m_cacheBehaviors.emplace_back(std::forward<CacheBehaviorsT>(value));
378 m_ableToUpdateBundleHasBeenSet =
true;
379 m_ableToUpdateBundle = value;
396 m_ipAddressTypeHasBeenSet =
true;
397 m_ipAddressType = value;
414 template <
typename TagsT = Aws::Vector<Tag>>
416 m_tagsHasBeenSet =
true;
417 m_tags = std::forward<TagsT>(value);
419 template <
typename TagsT = Aws::Vector<Tag>>
421 SetTags(std::forward<TagsT>(value));
424 template <
typename TagsT = Tag>
426 m_tagsHasBeenSet =
true;
427 m_tags.emplace_back(std::forward<TagsT>(value));
439 template <
typename ViewerMinimumTlsProtocolVersionT = Aws::String>
441 m_viewerMinimumTlsProtocolVersionHasBeenSet =
true;
442 m_viewerMinimumTlsProtocolVersion = std::forward<ViewerMinimumTlsProtocolVersionT>(value);
444 template <
typename ViewerMinimumTlsProtocolVersionT = Aws::String>
459 ResourceLocation m_location;
467 bool m_isEnabled{
false};
479 CacheBehavior m_defaultCacheBehavior;
481 CacheSettings m_cacheBehaviorSettings;
485 bool m_ableToUpdateBundle{
false};
492 bool m_nameHasBeenSet =
false;
493 bool m_arnHasBeenSet =
false;
494 bool m_supportCodeHasBeenSet =
false;
495 bool m_createdAtHasBeenSet =
false;
496 bool m_locationHasBeenSet =
false;
497 bool m_resourceTypeHasBeenSet =
false;
498 bool m_alternativeDomainNamesHasBeenSet =
false;
499 bool m_statusHasBeenSet =
false;
500 bool m_isEnabledHasBeenSet =
false;
501 bool m_domainNameHasBeenSet =
false;
502 bool m_bundleIdHasBeenSet =
false;
503 bool m_certificateNameHasBeenSet =
false;
504 bool m_originHasBeenSet =
false;
505 bool m_originPublicDNSHasBeenSet =
false;
506 bool m_defaultCacheBehaviorHasBeenSet =
false;
507 bool m_cacheBehaviorSettingsHasBeenSet =
false;
508 bool m_cacheBehaviorsHasBeenSet =
false;
509 bool m_ableToUpdateBundleHasBeenSet =
false;
510 bool m_ipAddressTypeHasBeenSet =
false;
511 bool m_tagsHasBeenSet =
false;
512 bool m_viewerMinimumTlsProtocolVersionHasBeenSet =
false;
void SetLocation(LocationT &&value)
LightsailDistribution & WithDomainName(DomainNameT &&value)
bool TagsHasBeenSet() const
bool NameHasBeenSet() const
bool AlternativeDomainNamesHasBeenSet() const
LightsailDistribution & WithIsEnabled(bool value)
bool IsEnabledHasBeenSet() const
void SetCertificateName(CertificateNameT &&value)
void SetResourceType(ResourceType value)
LightsailDistribution & WithArn(ArnT &&value)
const Aws::String & GetViewerMinimumTlsProtocolVersion() const
bool CertificateNameHasBeenSet() const
bool GetAbleToUpdateBundle() const
LightsailDistribution & WithCreatedAt(CreatedAtT &&value)
void SetCacheBehaviors(CacheBehaviorsT &&value)
LightsailDistribution & WithOrigin(OriginT &&value)
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
void SetName(NameT &&value)
void SetOrigin(OriginT &&value)
void SetTags(TagsT &&value)
const Origin & GetOrigin() const
bool ArnHasBeenSet() const
AWS_LIGHTSAIL_API LightsailDistribution & operator=(Aws::Utils::Json::JsonView jsonValue)
LightsailDistribution & WithOriginPublicDNS(OriginPublicDNST &&value)
LightsailDistribution & WithViewerMinimumTlsProtocolVersion(ViewerMinimumTlsProtocolVersionT &&value)
const Aws::String & GetCertificateName() const
void SetCreatedAt(CreatedAtT &&value)
const Aws::Vector< CacheBehaviorPerPath > & GetCacheBehaviors() const
void SetBundleId(BundleIdT &&value)
const ResourceLocation & GetLocation() const
LightsailDistribution & WithCacheBehaviors(CacheBehaviorsT &&value)
void SetViewerMinimumTlsProtocolVersion(ViewerMinimumTlsProtocolVersionT &&value)
void SetArn(ArnT &&value)
bool ResourceTypeHasBeenSet() const
LightsailDistribution & WithCertificateName(CertificateNameT &&value)
ResourceType GetResourceType() const
LightsailDistribution & WithBundleId(BundleIdT &&value)
const Aws::String & GetDomainName() const
LightsailDistribution & AddTags(TagsT &&value)
bool CacheBehaviorSettingsHasBeenSet() const
LightsailDistribution & AddAlternativeDomainNames(AlternativeDomainNamesT &&value)
bool StatusHasBeenSet() const
void SetOriginPublicDNS(OriginPublicDNST &&value)
AWS_LIGHTSAIL_API LightsailDistribution()=default
LightsailDistribution & WithAlternativeDomainNames(AlternativeDomainNamesT &&value)
LightsailDistribution & WithTags(TagsT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetCacheBehaviorSettings(CacheBehaviorSettingsT &&value)
const Aws::String & GetStatus() const
const Aws::Utils::DateTime & GetCreatedAt() const
LightsailDistribution & WithIpAddressType(IpAddressType value)
bool AbleToUpdateBundleHasBeenSet() const
const Aws::String & GetBundleId() const
AWS_LIGHTSAIL_API LightsailDistribution(Aws::Utils::Json::JsonView jsonValue)
void SetAbleToUpdateBundle(bool value)
bool IpAddressTypeHasBeenSet() const
bool LocationHasBeenSet() const
bool GetIsEnabled() const
LightsailDistribution & AddCacheBehaviors(CacheBehaviorsT &&value)
void SetDomainName(DomainNameT &&value)
void SetSupportCode(SupportCodeT &&value)
const CacheBehavior & GetDefaultCacheBehavior() const
const Aws::String & GetSupportCode() const
const Aws::String & GetOriginPublicDNS() const
LightsailDistribution & WithName(NameT &&value)
LightsailDistribution & WithLocation(LocationT &&value)
LightsailDistribution & WithSupportCode(SupportCodeT &&value)
void SetIpAddressType(IpAddressType value)
bool ViewerMinimumTlsProtocolVersionHasBeenSet() const
LightsailDistribution & WithStatus(StatusT &&value)
LightsailDistribution & WithAbleToUpdateBundle(bool value)
bool OriginPublicDNSHasBeenSet() const
bool DefaultCacheBehaviorHasBeenSet() const
bool BundleIdHasBeenSet() const
bool CacheBehaviorsHasBeenSet() const
bool OriginHasBeenSet() const
void SetAlternativeDomainNames(AlternativeDomainNamesT &&value)
void SetDefaultCacheBehavior(DefaultCacheBehaviorT &&value)
LightsailDistribution & WithCacheBehaviorSettings(CacheBehaviorSettingsT &&value)
const CacheSettings & GetCacheBehaviorSettings() const
const Aws::Vector< Aws::String > & GetAlternativeDomainNames() const
const Aws::String & GetArn() const
bool CreatedAtHasBeenSet() const
void SetStatus(StatusT &&value)
const Aws::String & GetName() const
bool DomainNameHasBeenSet() const
IpAddressType GetIpAddressType() const
bool SupportCodeHasBeenSet() const
void SetIsEnabled(bool value)
LightsailDistribution & WithResourceType(ResourceType value)
LightsailDistribution & WithDefaultCacheBehavior(DefaultCacheBehaviorT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue