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

Describes an identity provider.

See Also:

AWS * API Reference

*/ class IdentityProviderSummary { public: AWS_LICENSEMANAGERUSERSUBSCRIPTIONS_API IdentityProviderSummary(); AWS_LICENSEMANAGERUSERSUBSCRIPTIONS_API IdentityProviderSummary(Aws::Utils::Json::JsonView jsonValue); AWS_LICENSEMANAGERUSERSUBSCRIPTIONS_API IdentityProviderSummary& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_LICENSEMANAGERUSERSUBSCRIPTIONS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The failure message associated with an identity provider.

*/ inline const Aws::String& GetFailureMessage() const{ return m_failureMessage; } /** *

The failure message associated with an identity provider.

*/ inline bool FailureMessageHasBeenSet() const { return m_failureMessageHasBeenSet; } /** *

The failure message associated with an identity provider.

*/ inline void SetFailureMessage(const Aws::String& value) { m_failureMessageHasBeenSet = true; m_failureMessage = value; } /** *

The failure message associated with an identity provider.

*/ inline void SetFailureMessage(Aws::String&& value) { m_failureMessageHasBeenSet = true; m_failureMessage = std::move(value); } /** *

The failure message associated with an identity provider.

*/ inline void SetFailureMessage(const char* value) { m_failureMessageHasBeenSet = true; m_failureMessage.assign(value); } /** *

The failure message associated with an identity provider.

*/ inline IdentityProviderSummary& WithFailureMessage(const Aws::String& value) { SetFailureMessage(value); return *this;} /** *

The failure message associated with an identity provider.

*/ inline IdentityProviderSummary& WithFailureMessage(Aws::String&& value) { SetFailureMessage(std::move(value)); return *this;} /** *

The failure message associated with an identity provider.

*/ inline IdentityProviderSummary& WithFailureMessage(const char* value) { SetFailureMessage(value); return *this;} /** *

An object that specifies details for the identity provider.

*/ inline const IdentityProvider& GetIdentityProvider() const{ return m_identityProvider; } /** *

An object that specifies details for the identity provider.

*/ inline bool IdentityProviderHasBeenSet() const { return m_identityProviderHasBeenSet; } /** *

An object that specifies details for the identity provider.

*/ inline void SetIdentityProvider(const IdentityProvider& value) { m_identityProviderHasBeenSet = true; m_identityProvider = value; } /** *

An object that specifies details for the identity provider.

*/ inline void SetIdentityProvider(IdentityProvider&& value) { m_identityProviderHasBeenSet = true; m_identityProvider = std::move(value); } /** *

An object that specifies details for the identity provider.

*/ inline IdentityProviderSummary& WithIdentityProvider(const IdentityProvider& value) { SetIdentityProvider(value); return *this;} /** *

An object that specifies details for the identity provider.

*/ inline IdentityProviderSummary& WithIdentityProvider(IdentityProvider&& value) { SetIdentityProvider(std::move(value)); return *this;} /** *

The name of the user-based subscription product.

*/ inline const Aws::String& GetProduct() const{ return m_product; } /** *

The name of the user-based subscription product.

*/ inline bool ProductHasBeenSet() const { return m_productHasBeenSet; } /** *

The name of the user-based subscription product.

*/ inline void SetProduct(const Aws::String& value) { m_productHasBeenSet = true; m_product = value; } /** *

The name of the user-based subscription product.

*/ inline void SetProduct(Aws::String&& value) { m_productHasBeenSet = true; m_product = std::move(value); } /** *

The name of the user-based subscription product.

*/ inline void SetProduct(const char* value) { m_productHasBeenSet = true; m_product.assign(value); } /** *

The name of the user-based subscription product.

*/ inline IdentityProviderSummary& WithProduct(const Aws::String& value) { SetProduct(value); return *this;} /** *

The name of the user-based subscription product.

*/ inline IdentityProviderSummary& WithProduct(Aws::String&& value) { SetProduct(std::move(value)); return *this;} /** *

The name of the user-based subscription product.

*/ inline IdentityProviderSummary& WithProduct(const char* value) { SetProduct(value); return *this;} /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline const Settings& GetSettings() const{ return m_settings; } /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline bool SettingsHasBeenSet() const { return m_settingsHasBeenSet; } /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline void SetSettings(const Settings& value) { m_settingsHasBeenSet = true; m_settings = value; } /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline void SetSettings(Settings&& value) { m_settingsHasBeenSet = true; m_settings = std::move(value); } /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline IdentityProviderSummary& WithSettings(const Settings& value) { SetSettings(value); return *this;} /** *

An object that details the registered identity provider’s product related * configuration settings such as the subnets to provision VPC endpoints.

*/ inline IdentityProviderSummary& WithSettings(Settings&& value) { SetSettings(std::move(value)); return *this;} /** *

The status of an identity provider.

*/ inline const Aws::String& GetStatus() const{ return m_status; } /** *

The status of an identity provider.

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

The status of an identity provider.

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

The status of an identity provider.

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

The status of an identity provider.

*/ inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); } /** *

The status of an identity provider.

*/ inline IdentityProviderSummary& WithStatus(const Aws::String& value) { SetStatus(value); return *this;} /** *

The status of an identity provider.

*/ inline IdentityProviderSummary& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;} /** *

The status of an identity provider.

*/ inline IdentityProviderSummary& WithStatus(const char* value) { SetStatus(value); return *this;} private: Aws::String m_failureMessage; bool m_failureMessageHasBeenSet = false; IdentityProvider m_identityProvider; bool m_identityProviderHasBeenSet = false; Aws::String m_product; bool m_productHasBeenSet = false; Settings m_settings; bool m_settingsHasBeenSet = false; Aws::String m_status; bool m_statusHasBeenSet = false; }; } // namespace Model } // namespace LicenseManagerUserSubscriptions } // namespace Aws