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

A structure containing the identity provider (IdP) metadata used to integrate * the identity provider with this workspace. You can specify the metadata either * by providing a URL to its location in the url parameter, or by * specifying the full metadata in XML format in the xml parameter. * Specifying both will cause an error.

See Also:

AWS * API Reference

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

The URL of the location containing the IdP metadata.

*/ inline const Aws::String& GetUrl() const{ return m_url; } /** *

The URL of the location containing the IdP metadata.

*/ inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; } /** *

The URL of the location containing the IdP metadata.

*/ inline void SetUrl(const Aws::String& value) { m_urlHasBeenSet = true; m_url = value; } /** *

The URL of the location containing the IdP metadata.

*/ inline void SetUrl(Aws::String&& value) { m_urlHasBeenSet = true; m_url = std::move(value); } /** *

The URL of the location containing the IdP metadata.

*/ inline void SetUrl(const char* value) { m_urlHasBeenSet = true; m_url.assign(value); } /** *

The URL of the location containing the IdP metadata.

*/ inline IdpMetadata& WithUrl(const Aws::String& value) { SetUrl(value); return *this;} /** *

The URL of the location containing the IdP metadata.

*/ inline IdpMetadata& WithUrl(Aws::String&& value) { SetUrl(std::move(value)); return *this;} /** *

The URL of the location containing the IdP metadata.

*/ inline IdpMetadata& WithUrl(const char* value) { SetUrl(value); return *this;} /** *

The full IdP metadata, in XML format.

*/ inline const Aws::String& GetXml() const{ return m_xml; } /** *

The full IdP metadata, in XML format.

*/ inline bool XmlHasBeenSet() const { return m_xmlHasBeenSet; } /** *

The full IdP metadata, in XML format.

*/ inline void SetXml(const Aws::String& value) { m_xmlHasBeenSet = true; m_xml = value; } /** *

The full IdP metadata, in XML format.

*/ inline void SetXml(Aws::String&& value) { m_xmlHasBeenSet = true; m_xml = std::move(value); } /** *

The full IdP metadata, in XML format.

*/ inline void SetXml(const char* value) { m_xmlHasBeenSet = true; m_xml.assign(value); } /** *

The full IdP metadata, in XML format.

*/ inline IdpMetadata& WithXml(const Aws::String& value) { SetXml(value); return *this;} /** *

The full IdP metadata, in XML format.

*/ inline IdpMetadata& WithXml(Aws::String&& value) { SetXml(std::move(value)); return *this;} /** *

The full IdP metadata, in XML format.

*/ inline IdpMetadata& WithXml(const char* value) { SetXml(value); return *this;} private: Aws::String m_url; bool m_urlHasBeenSet = false; Aws::String m_xml; bool m_xmlHasBeenSet = false; }; } // namespace Model } // namespace ManagedGrafana } // namespace Aws