/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace Redshift { namespace Model { /** *

Describes a partner integration.

See Also:

AWS * API Reference

*/ class PartnerIntegrationInfo { public: AWS_REDSHIFT_API PartnerIntegrationInfo(); AWS_REDSHIFT_API PartnerIntegrationInfo(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_REDSHIFT_API PartnerIntegrationInfo& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The name of the database that receives data from a partner.

*/ inline const Aws::String& GetDatabaseName() const{ return m_databaseName; } /** *

The name of the database that receives data from a partner.

*/ inline bool DatabaseNameHasBeenSet() const { return m_databaseNameHasBeenSet; } /** *

The name of the database that receives data from a partner.

*/ inline void SetDatabaseName(const Aws::String& value) { m_databaseNameHasBeenSet = true; m_databaseName = value; } /** *

The name of the database that receives data from a partner.

*/ inline void SetDatabaseName(Aws::String&& value) { m_databaseNameHasBeenSet = true; m_databaseName = std::move(value); } /** *

The name of the database that receives data from a partner.

*/ inline void SetDatabaseName(const char* value) { m_databaseNameHasBeenSet = true; m_databaseName.assign(value); } /** *

The name of the database that receives data from a partner.

*/ inline PartnerIntegrationInfo& WithDatabaseName(const Aws::String& value) { SetDatabaseName(value); return *this;} /** *

The name of the database that receives data from a partner.

*/ inline PartnerIntegrationInfo& WithDatabaseName(Aws::String&& value) { SetDatabaseName(std::move(value)); return *this;} /** *

The name of the database that receives data from a partner.

*/ inline PartnerIntegrationInfo& WithDatabaseName(const char* value) { SetDatabaseName(value); return *this;} /** *

The name of the partner.

*/ inline const Aws::String& GetPartnerName() const{ return m_partnerName; } /** *

The name of the partner.

*/ inline bool PartnerNameHasBeenSet() const { return m_partnerNameHasBeenSet; } /** *

The name of the partner.

*/ inline void SetPartnerName(const Aws::String& value) { m_partnerNameHasBeenSet = true; m_partnerName = value; } /** *

The name of the partner.

*/ inline void SetPartnerName(Aws::String&& value) { m_partnerNameHasBeenSet = true; m_partnerName = std::move(value); } /** *

The name of the partner.

*/ inline void SetPartnerName(const char* value) { m_partnerNameHasBeenSet = true; m_partnerName.assign(value); } /** *

The name of the partner.

*/ inline PartnerIntegrationInfo& WithPartnerName(const Aws::String& value) { SetPartnerName(value); return *this;} /** *

The name of the partner.

*/ inline PartnerIntegrationInfo& WithPartnerName(Aws::String&& value) { SetPartnerName(std::move(value)); return *this;} /** *

The name of the partner.

*/ inline PartnerIntegrationInfo& WithPartnerName(const char* value) { SetPartnerName(value); return *this;} /** *

The partner integration status.

*/ inline const PartnerIntegrationStatus& GetStatus() const{ return m_status; } /** *

The partner integration status.

*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *

The partner integration status.

*/ inline void SetStatus(const PartnerIntegrationStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *

The partner integration status.

*/ inline void SetStatus(PartnerIntegrationStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *

The partner integration status.

*/ inline PartnerIntegrationInfo& WithStatus(const PartnerIntegrationStatus& value) { SetStatus(value); return *this;} /** *

The partner integration status.

*/ inline PartnerIntegrationInfo& WithStatus(PartnerIntegrationStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

The status message provided by the partner.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

The status message provided by the partner.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

The status message provided by the partner.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

The status message provided by the partner.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

The status message provided by the partner.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

The status message provided by the partner.

*/ inline PartnerIntegrationInfo& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

The status message provided by the partner.

*/ inline PartnerIntegrationInfo& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

The status message provided by the partner.

*/ inline PartnerIntegrationInfo& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

The date (UTC) that the partner integration was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The date (UTC) that the partner integration was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The date (UTC) that the partner integration was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The date (UTC) that the partner integration was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The date (UTC) that the partner integration was created.

*/ inline PartnerIntegrationInfo& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The date (UTC) that the partner integration was created.

*/ inline PartnerIntegrationInfo& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; } /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAtHasBeenSet = true; m_updatedAt = value; } /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::move(value); } /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline PartnerIntegrationInfo& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} /** *

The date (UTC) that the partner integration status was last updated by the * partner.

*/ inline PartnerIntegrationInfo& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} private: Aws::String m_databaseName; bool m_databaseNameHasBeenSet = false; Aws::String m_partnerName; bool m_partnerNameHasBeenSet = false; PartnerIntegrationStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::Utils::DateTime m_updatedAt; bool m_updatedAtHasBeenSet = false; }; } // namespace Model } // namespace Redshift } // namespace Aws