7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/redshift/model/ZeroETLIntegrationStatus.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/redshift/model/ResponseMetadata.h>
15#include <aws/redshift/model/IntegrationError.h>
16#include <aws/redshift/model/Tag.h>
50 template<
typename IntegrationArnT = Aws::String>
51 void SetIntegrationArn(IntegrationArnT&& value) { m_integrationArnHasBeenSet =
true; m_integrationArn = std::forward<IntegrationArnT>(value); }
52 template<
typename IntegrationArnT = Aws::String>
62 template<
typename IntegrationNameT = Aws::String>
63 void SetIntegrationName(IntegrationNameT&& value) { m_integrationNameHasBeenSet =
true; m_integrationName = std::forward<IntegrationNameT>(value); }
64 template<
typename IntegrationNameT = Aws::String>
75 template<
typename SourceArnT = Aws::String>
76 void SetSourceArn(SourceArnT&& value) { m_sourceArnHasBeenSet =
true; m_sourceArn = std::forward<SourceArnT>(value); }
77 template<
typename SourceArnT = Aws::String>
88 template<
typename TargetArnT = Aws::String>
89 void SetTargetArn(TargetArnT&& value) { m_targetArnHasBeenSet =
true; m_targetArn = std::forward<TargetArnT>(value); }
90 template<
typename TargetArnT = Aws::String>
110 template<
typename ErrorsT = Aws::Vector<IntegrationError>>
111 void SetErrors(ErrorsT&& value) { m_errorsHasBeenSet =
true; m_errors = std::forward<ErrorsT>(value); }
112 template<
typename ErrorsT = Aws::Vector<IntegrationError>>
114 template<
typename ErrorsT = IntegrationError>
115 Integration&
AddErrors(ErrorsT&& value) { m_errorsHasBeenSet =
true; m_errors.emplace_back(std::forward<ErrorsT>(value));
return *
this; }
124 template<
typename CreateTimeT = Aws::Utils::DateTime>
125 void SetCreateTime(CreateTimeT&& value) { m_createTimeHasBeenSet =
true; m_createTime = std::forward<CreateTimeT>(value); }
126 template<
typename CreateTimeT = Aws::Utils::DateTime>
136 template<
typename DescriptionT = Aws::String>
137 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
138 template<
typename DescriptionT = Aws::String>
149 template<
typename KMSKeyIdT = Aws::String>
150 void SetKMSKeyId(KMSKeyIdT&& value) { m_kMSKeyIdHasBeenSet =
true; m_kMSKeyId = std::forward<KMSKeyIdT>(value); }
151 template<
typename KMSKeyIdT = Aws::String>
164 template<
typename AdditionalEncryptionContextT = Aws::Map<Aws::String, Aws::String>>
165 void SetAdditionalEncryptionContext(AdditionalEncryptionContextT&& value) { m_additionalEncryptionContextHasBeenSet =
true; m_additionalEncryptionContext = std::forward<AdditionalEncryptionContextT>(value); }
166 template<
typename AdditionalEncryptionContextT = Aws::Map<Aws::String, Aws::String>>
168 template<
typename AdditionalEncryptionContextKeyT = Aws::String,
typename AdditionalEncryptionContextValueT = Aws::String>
170 m_additionalEncryptionContextHasBeenSet =
true; m_additionalEncryptionContext.emplace(std::forward<AdditionalEncryptionContextKeyT>(key), std::forward<AdditionalEncryptionContextValueT>(value));
return *
this;
180 template<
typename TagsT = Aws::Vector<Tag>>
181 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
182 template<
typename TagsT = Aws::Vector<Tag>>
184 template<
typename TagsT = Tag>
185 Integration&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
191 template<
typename ResponseMetadataT = ResponseMetadata>
192 void SetResponseMetadata(ResponseMetadataT&& value) { m_responseMetadataHasBeenSet =
true; m_responseMetadata = std::forward<ResponseMetadataT>(value); }
193 template<
typename ResponseMetadataT = ResponseMetadata>
199 bool m_integrationArnHasBeenSet =
false;
202 bool m_integrationNameHasBeenSet =
false;
205 bool m_sourceArnHasBeenSet =
false;
208 bool m_targetArnHasBeenSet =
false;
211 bool m_statusHasBeenSet =
false;
214 bool m_errorsHasBeenSet =
false;
217 bool m_createTimeHasBeenSet =
false;
220 bool m_descriptionHasBeenSet =
false;
223 bool m_kMSKeyIdHasBeenSet =
false;
226 bool m_additionalEncryptionContextHasBeenSet =
false;
229 bool m_tagsHasBeenSet =
false;
231 ResponseMetadata m_responseMetadata;
232 bool m_responseMetadataHasBeenSet =
true;
AWS_REDSHIFT_API Integration & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_REDSHIFT_API Integration()=default
Integration & WithAdditionalEncryptionContext(AdditionalEncryptionContextT &&value)
Integration & WithIntegrationName(IntegrationNameT &&value)
Integration & WithDescription(DescriptionT &&value)
bool SourceArnHasBeenSet() const
const Aws::String & GetIntegrationName() const
Integration & WithSourceArn(SourceArnT &&value)
const Aws::String & GetSourceArn() const
const ResponseMetadata & GetResponseMetadata() const
bool TargetArnHasBeenSet() const
bool IntegrationArnHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetAdditionalEncryptionContext() const
bool AdditionalEncryptionContextHasBeenSet() const
AWS_REDSHIFT_API Integration(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
void SetStatus(ZeroETLIntegrationStatus value)
Integration & AddAdditionalEncryptionContext(AdditionalEncryptionContextKeyT &&key, AdditionalEncryptionContextValueT &&value)
Integration & WithCreateTime(CreateTimeT &&value)
bool TagsHasBeenSet() const
const Aws::String & GetIntegrationArn() const
const Aws::Utils::DateTime & GetCreateTime() const
bool StatusHasBeenSet() const
void SetIntegrationName(IntegrationNameT &&value)
Integration & AddErrors(ErrorsT &&value)
Integration & WithKMSKeyId(KMSKeyIdT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetIntegrationArn(IntegrationArnT &&value)
bool IntegrationNameHasBeenSet() const
Integration & WithTags(TagsT &&value)
const Aws::Vector< Tag > & GetTags() const
void SetCreateTime(CreateTimeT &&value)
Integration & WithErrors(ErrorsT &&value)
void SetSourceArn(SourceArnT &&value)
const Aws::String & GetKMSKeyId() const
Integration & AddTags(TagsT &&value)
ZeroETLIntegrationStatus GetStatus() const
bool DescriptionHasBeenSet() const
bool CreateTimeHasBeenSet() const
void SetKMSKeyId(KMSKeyIdT &&value)
void SetErrors(ErrorsT &&value)
const Aws::Vector< IntegrationError > & GetErrors() const
Integration & WithIntegrationArn(IntegrationArnT &&value)
void SetTags(TagsT &&value)
void SetDescription(DescriptionT &&value)
bool KMSKeyIdHasBeenSet() const
Integration & WithTargetArn(TargetArnT &&value)
bool ErrorsHasBeenSet() const
const Aws::String & GetTargetArn() const
Integration & WithResponseMetadata(ResponseMetadataT &&value)
void SetTargetArn(TargetArnT &&value)
void SetAdditionalEncryptionContext(AdditionalEncryptionContextT &&value)
void SetResponseMetadata(ResponseMetadataT &&value)
const Aws::String & GetDescription() const
Integration & WithStatus(ZeroETLIntegrationStatus value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream