7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/lightsail/model/ResourceLocation.h>
11#include <aws/lightsail/model/ResourceType.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/lightsail/model/Origin.h>
14#include <aws/lightsail/model/CacheBehavior.h>
15#include <aws/lightsail/model/CacheSettings.h>
16#include <aws/lightsail/model/IpAddressType.h>
17#include <aws/lightsail/model/CacheBehaviorPerPath.h>
18#include <aws/lightsail/model/Tag.h>
57 template<
typename NameT = Aws::String>
58 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
59 template<
typename NameT = Aws::String>
69 template<
typename ArnT = Aws::String>
70 void SetArn(ArnT&& value) { m_arnHasBeenSet =
true; m_arn = std::forward<ArnT>(value); }
71 template<
typename ArnT = Aws::String>
83 template<
typename SupportCodeT = Aws::String>
84 void SetSupportCode(SupportCodeT&& value) { m_supportCodeHasBeenSet =
true; m_supportCode = std::forward<SupportCodeT>(value); }
85 template<
typename SupportCodeT = Aws::String>
95 template<
typename CreatedAtT = Aws::Utils::DateTime>
96 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet =
true; m_createdAt = std::forward<CreatedAtT>(value); }
97 template<
typename CreatedAtT = Aws::Utils::DateTime>
111 template<
typename LocationT = ResourceLocation>
112 void SetLocation(LocationT&& value) { m_locationHasBeenSet =
true; m_location = std::forward<LocationT>(value); }
113 template<
typename LocationT = ResourceLocation>
133 template<
typename AlternativeDomainNamesT = Aws::Vector<Aws::String>>
134 void SetAlternativeDomainNames(AlternativeDomainNamesT&& value) { m_alternativeDomainNamesHasBeenSet =
true; m_alternativeDomainNames = std::forward<AlternativeDomainNamesT>(value); }
135 template<
typename AlternativeDomainNamesT = Aws::Vector<Aws::String>>
137 template<
typename AlternativeDomainNamesT = Aws::String>
147 template<
typename StatusT = Aws::String>
148 void SetStatus(StatusT&& value) { m_statusHasBeenSet =
true; m_status = std::forward<StatusT>(value); }
149 template<
typename StatusT = Aws::String>
159 inline void SetIsEnabled(
bool value) { m_isEnabledHasBeenSet =
true; m_isEnabled = value; }
169 template<
typename DomainNameT = Aws::String>
170 void SetDomainName(DomainNameT&& value) { m_domainNameHasBeenSet =
true; m_domainName = std::forward<DomainNameT>(value); }
171 template<
typename DomainNameT = Aws::String>
181 template<
typename BundleIdT = Aws::String>
182 void SetBundleId(BundleIdT&& value) { m_bundleIdHasBeenSet =
true; m_bundleId = std::forward<BundleIdT>(value); }
183 template<
typename BundleIdT = Aws::String>
193 template<
typename CertificateNameT = Aws::String>
194 void SetCertificateName(CertificateNameT&& value) { m_certificateNameHasBeenSet =
true; m_certificateName = std::forward<CertificateNameT>(value); }
195 template<
typename CertificateNameT = Aws::String>
207 template<
typename OriginT = Origin>
208 void SetOrigin(OriginT&& value) { m_originHasBeenSet =
true; m_origin = std::forward<OriginT>(value); }
209 template<
typename OriginT = Origin>
219 template<
typename OriginPublicDNST = Aws::String>
220 void SetOriginPublicDNS(OriginPublicDNST&& value) { m_originPublicDNSHasBeenSet =
true; m_originPublicDNS = std::forward<OriginPublicDNST>(value); }
221 template<
typename OriginPublicDNST = Aws::String>
231 template<
typename DefaultCacheBehaviorT = CacheBehavior>
232 void SetDefaultCacheBehavior(DefaultCacheBehaviorT&& value) { m_defaultCacheBehaviorHasBeenSet =
true; m_defaultCacheBehavior = std::forward<DefaultCacheBehaviorT>(value); }
233 template<
typename DefaultCacheBehaviorT = CacheBehavior>
243 template<
typename CacheBehaviorSettingsT = CacheSettings>
244 void SetCacheBehaviorSettings(CacheBehaviorSettingsT&& value) { m_cacheBehaviorSettingsHasBeenSet =
true; m_cacheBehaviorSettings = std::forward<CacheBehaviorSettingsT>(value); }
245 template<
typename CacheBehaviorSettingsT = CacheSettings>
256 template<
typename CacheBehaviorsT = Aws::Vector<CacheBehaviorPerPath>>
257 void SetCacheBehaviors(CacheBehaviorsT&& value) { m_cacheBehaviorsHasBeenSet =
true; m_cacheBehaviors = std::forward<CacheBehaviorsT>(value); }
258 template<
typename CacheBehaviorsT = Aws::Vector<CacheBehaviorPerPath>>
260 template<
typename CacheBehaviorsT = CacheBehaviorPerPath>
273 inline void SetAbleToUpdateBundle(
bool value) { m_ableToUpdateBundleHasBeenSet =
true; m_ableToUpdateBundle = value; }
298 template<
typename TagsT = Aws::Vector<Tag>>
299 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
300 template<
typename TagsT = Aws::Vector<Tag>>
302 template<
typename TagsT = Tag>
313 template<
typename ViewerMinimumTlsProtocolVersionT = Aws::String>
314 void SetViewerMinimumTlsProtocolVersion(ViewerMinimumTlsProtocolVersionT&& value) { m_viewerMinimumTlsProtocolVersionHasBeenSet =
true; m_viewerMinimumTlsProtocolVersion = std::forward<ViewerMinimumTlsProtocolVersionT>(value); }
315 template<
typename ViewerMinimumTlsProtocolVersionT = Aws::String>
321 bool m_nameHasBeenSet =
false;
324 bool m_arnHasBeenSet =
false;
327 bool m_supportCodeHasBeenSet =
false;
330 bool m_createdAtHasBeenSet =
false;
332 ResourceLocation m_location;
333 bool m_locationHasBeenSet =
false;
336 bool m_resourceTypeHasBeenSet =
false;
339 bool m_alternativeDomainNamesHasBeenSet =
false;
342 bool m_statusHasBeenSet =
false;
344 bool m_isEnabled{
false};
345 bool m_isEnabledHasBeenSet =
false;
348 bool m_domainNameHasBeenSet =
false;
351 bool m_bundleIdHasBeenSet =
false;
354 bool m_certificateNameHasBeenSet =
false;
357 bool m_originHasBeenSet =
false;
360 bool m_originPublicDNSHasBeenSet =
false;
362 CacheBehavior m_defaultCacheBehavior;
363 bool m_defaultCacheBehaviorHasBeenSet =
false;
365 CacheSettings m_cacheBehaviorSettings;
366 bool m_cacheBehaviorSettingsHasBeenSet =
false;
369 bool m_cacheBehaviorsHasBeenSet =
false;
371 bool m_ableToUpdateBundle{
false};
372 bool m_ableToUpdateBundleHasBeenSet =
false;
375 bool m_ipAddressTypeHasBeenSet =
false;
378 bool m_tagsHasBeenSet =
false;
381 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