/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The structure of a data source.See Also:
AWS
* API Reference
The Amazon Resource Name (ARN) of the data source.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) of the data source.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the data source.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) of the data source.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) of the data source.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) of the data source.
*/ inline DataSource& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the data source.
*/ inline DataSource& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the data source.
*/ inline DataSource& WithArn(const char* value) { SetArn(value); return *this;} /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline const Aws::String& GetDataSourceId() const{ return m_dataSourceId; } /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline bool DataSourceIdHasBeenSet() const { return m_dataSourceIdHasBeenSet; } /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline void SetDataSourceId(const Aws::String& value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId = value; } /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline void SetDataSourceId(Aws::String&& value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId = std::move(value); } /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline void SetDataSourceId(const char* value) { m_dataSourceIdHasBeenSet = true; m_dataSourceId.assign(value); } /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline DataSource& WithDataSourceId(const Aws::String& value) { SetDataSourceId(value); return *this;} /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline DataSource& WithDataSourceId(Aws::String&& value) { SetDataSourceId(std::move(value)); return *this;} /** *The ID of the data source. This ID is unique per Amazon Web Services Region * for each Amazon Web Services account.
*/ inline DataSource& WithDataSourceId(const char* value) { SetDataSourceId(value); return *this;} /** *A display name for the data source.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *A display name for the data source.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *A display name for the data source.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *A display name for the data source.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *A display name for the data source.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *A display name for the data source.
*/ inline DataSource& WithName(const Aws::String& value) { SetName(value); return *this;} /** *A display name for the data source.
*/ inline DataSource& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *A display name for the data source.
*/ inline DataSource& WithName(const char* value) { SetName(value); return *this;} /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline const DataSourceType& GetType() const{ return m_type; } /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline void SetType(const DataSourceType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline void SetType(DataSourceType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline DataSource& WithType(const DataSourceType& value) { SetType(value); return *this;} /** *The type of the data source. This type indicates which database engine the * data source connects to.
*/ inline DataSource& WithType(DataSourceType&& value) { SetType(std::move(value)); return *this;} /** *The HTTP status of the request.
*/ inline const ResourceStatus& GetStatus() const{ return m_status; } /** *The HTTP status of the request.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The HTTP status of the request.
*/ inline void SetStatus(const ResourceStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The HTTP status of the request.
*/ inline void SetStatus(ResourceStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The HTTP status of the request.
*/ inline DataSource& WithStatus(const ResourceStatus& value) { SetStatus(value); return *this;} /** *The HTTP status of the request.
*/ inline DataSource& WithStatus(ResourceStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The time that this data source was created.
*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *The time that this data source was created.
*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *The time that this data source was created.
*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *The time that this data source was created.
*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *The time that this data source was created.
*/ inline DataSource& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *The time that this data source was created.
*/ inline DataSource& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *The last time that this data source was updated.
*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *The last time that this data source was updated.
*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *The last time that this data source was updated.
*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *The last time that this data source was updated.
*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *The last time that this data source was updated.
*/ inline DataSource& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *The last time that this data source was updated.
*/ inline DataSource& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline const DataSourceParameters& GetDataSourceParameters() const{ return m_dataSourceParameters; } /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline bool DataSourceParametersHasBeenSet() const { return m_dataSourceParametersHasBeenSet; } /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline void SetDataSourceParameters(const DataSourceParameters& value) { m_dataSourceParametersHasBeenSet = true; m_dataSourceParameters = value; } /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline void SetDataSourceParameters(DataSourceParameters&& value) { m_dataSourceParametersHasBeenSet = true; m_dataSourceParameters = std::move(value); } /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline DataSource& WithDataSourceParameters(const DataSourceParameters& value) { SetDataSourceParameters(value); return *this;} /** *The parameters that Amazon QuickSight uses to connect to your underlying * source. This is a variant type structure. For this structure to be valid, only * one of the attributes can be non-null.
*/ inline DataSource& WithDataSourceParameters(DataSourceParameters&& value) { SetDataSourceParameters(std::move(value)); return *this;} /** *A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
A set of alternate data source parameters that you want to share for the
* credentials stored with this data source. The credentials are applied in tandem
* with the data source parameters when you copy a data source by using a create or
* update request. The API operation compares the DataSourceParameters
* structure that's in the request with the structures in the
* AlternateDataSourceParameters
allow list. If the structures are an
* exact match, the request is allowed to use the credentials from this existing
* data source. If the AlternateDataSourceParameters
list is null, the
* Credentials
originally used with this
* DataSourceParameters
are automatically allowed.
The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline const VpcConnectionProperties& GetVpcConnectionProperties() const{ return m_vpcConnectionProperties; } /** *The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline bool VpcConnectionPropertiesHasBeenSet() const { return m_vpcConnectionPropertiesHasBeenSet; } /** *The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline void SetVpcConnectionProperties(const VpcConnectionProperties& value) { m_vpcConnectionPropertiesHasBeenSet = true; m_vpcConnectionProperties = value; } /** *The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline void SetVpcConnectionProperties(VpcConnectionProperties&& value) { m_vpcConnectionPropertiesHasBeenSet = true; m_vpcConnectionProperties = std::move(value); } /** *The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline DataSource& WithVpcConnectionProperties(const VpcConnectionProperties& value) { SetVpcConnectionProperties(value); return *this;} /** *The VPC connection information. You need to use this parameter only when you * want Amazon QuickSight to use a VPC connection when connecting to your * underlying source.
*/ inline DataSource& WithVpcConnectionProperties(VpcConnectionProperties&& value) { SetVpcConnectionProperties(std::move(value)); return *this;} /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline const SslProperties& GetSslProperties() const{ return m_sslProperties; } /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline bool SslPropertiesHasBeenSet() const { return m_sslPropertiesHasBeenSet; } /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline void SetSslProperties(const SslProperties& value) { m_sslPropertiesHasBeenSet = true; m_sslProperties = value; } /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline void SetSslProperties(SslProperties&& value) { m_sslPropertiesHasBeenSet = true; m_sslProperties = std::move(value); } /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline DataSource& WithSslProperties(const SslProperties& value) { SetSslProperties(value); return *this;} /** *Secure Socket Layer (SSL) properties that apply when Amazon QuickSight * connects to your underlying source.
*/ inline DataSource& WithSslProperties(SslProperties&& value) { SetSslProperties(std::move(value)); return *this;} /** *Error information from the last update or the creation of the data * source.
*/ inline const DataSourceErrorInfo& GetErrorInfo() const{ return m_errorInfo; } /** *Error information from the last update or the creation of the data * source.
*/ inline bool ErrorInfoHasBeenSet() const { return m_errorInfoHasBeenSet; } /** *Error information from the last update or the creation of the data * source.
*/ inline void SetErrorInfo(const DataSourceErrorInfo& value) { m_errorInfoHasBeenSet = true; m_errorInfo = value; } /** *Error information from the last update or the creation of the data * source.
*/ inline void SetErrorInfo(DataSourceErrorInfo&& value) { m_errorInfoHasBeenSet = true; m_errorInfo = std::move(value); } /** *Error information from the last update or the creation of the data * source.
*/ inline DataSource& WithErrorInfo(const DataSourceErrorInfo& value) { SetErrorInfo(value); return *this;} /** *Error information from the last update or the creation of the data * source.
*/ inline DataSource& WithErrorInfo(DataSourceErrorInfo&& value) { SetErrorInfo(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline const Aws::String& GetSecretArn() const{ return m_secretArn; } /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline bool SecretArnHasBeenSet() const { return m_secretArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline void SetSecretArn(const Aws::String& value) { m_secretArnHasBeenSet = true; m_secretArn = value; } /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline void SetSecretArn(Aws::String&& value) { m_secretArnHasBeenSet = true; m_secretArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline void SetSecretArn(const char* value) { m_secretArnHasBeenSet = true; m_secretArn.assign(value); } /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline DataSource& WithSecretArn(const Aws::String& value) { SetSecretArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline DataSource& WithSecretArn(Aws::String&& value) { SetSecretArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the secret associated with the data source * in Amazon Secrets Manager.
*/ inline DataSource& WithSecretArn(const char* value) { SetSecretArn(value); return *this;} private: Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_dataSourceId; bool m_dataSourceIdHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; DataSourceType m_type; bool m_typeHasBeenSet = false; ResourceStatus m_status; bool m_statusHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; DataSourceParameters m_dataSourceParameters; bool m_dataSourceParametersHasBeenSet = false; Aws::Vector