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

The custom credentials required for custom authentication.

See * Also:

AWS * API Reference

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

The custom authentication type that the connector uses.

*/ inline const Aws::String& GetCustomAuthenticationType() const{ return m_customAuthenticationType; } /** *

The custom authentication type that the connector uses.

*/ inline bool CustomAuthenticationTypeHasBeenSet() const { return m_customAuthenticationTypeHasBeenSet; } /** *

The custom authentication type that the connector uses.

*/ inline void SetCustomAuthenticationType(const Aws::String& value) { m_customAuthenticationTypeHasBeenSet = true; m_customAuthenticationType = value; } /** *

The custom authentication type that the connector uses.

*/ inline void SetCustomAuthenticationType(Aws::String&& value) { m_customAuthenticationTypeHasBeenSet = true; m_customAuthenticationType = std::move(value); } /** *

The custom authentication type that the connector uses.

*/ inline void SetCustomAuthenticationType(const char* value) { m_customAuthenticationTypeHasBeenSet = true; m_customAuthenticationType.assign(value); } /** *

The custom authentication type that the connector uses.

*/ inline CustomAuthCredentials& WithCustomAuthenticationType(const Aws::String& value) { SetCustomAuthenticationType(value); return *this;} /** *

The custom authentication type that the connector uses.

*/ inline CustomAuthCredentials& WithCustomAuthenticationType(Aws::String&& value) { SetCustomAuthenticationType(std::move(value)); return *this;} /** *

The custom authentication type that the connector uses.

*/ inline CustomAuthCredentials& WithCustomAuthenticationType(const char* value) { SetCustomAuthenticationType(value); return *this;} /** *

A map that holds custom authentication credentials.

*/ inline const Aws::Map& GetCredentialsMap() const{ return m_credentialsMap; } /** *

A map that holds custom authentication credentials.

*/ inline bool CredentialsMapHasBeenSet() const { return m_credentialsMapHasBeenSet; } /** *

A map that holds custom authentication credentials.

*/ inline void SetCredentialsMap(const Aws::Map& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap = value; } /** *

A map that holds custom authentication credentials.

*/ inline void SetCredentialsMap(Aws::Map&& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap = std::move(value); } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& WithCredentialsMap(const Aws::Map& value) { SetCredentialsMap(value); return *this;} /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& WithCredentialsMap(Aws::Map&& value) { SetCredentialsMap(std::move(value)); return *this;} /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(const Aws::String& key, const Aws::String& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(key, value); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(Aws::String&& key, const Aws::String& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(std::move(key), value); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(const Aws::String& key, Aws::String&& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(key, std::move(value)); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(Aws::String&& key, Aws::String&& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(std::move(key), std::move(value)); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(const char* key, Aws::String&& value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(key, std::move(value)); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(Aws::String&& key, const char* value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(std::move(key), value); return *this; } /** *

A map that holds custom authentication credentials.

*/ inline CustomAuthCredentials& AddCredentialsMap(const char* key, const char* value) { m_credentialsMapHasBeenSet = true; m_credentialsMap.emplace(key, value); return *this; } private: Aws::String m_customAuthenticationType; bool m_customAuthenticationTypeHasBeenSet = false; Aws::Map m_credentialsMap; bool m_credentialsMapHasBeenSet = false; }; } // namespace Model } // namespace Appflow } // namespace Aws