/** * 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 Redshift { namespace Model { /** */ class CreateAuthenticationProfileRequest : public RedshiftRequest { public: AWS_REDSHIFT_API CreateAuthenticationProfileRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateAuthenticationProfile"; } AWS_REDSHIFT_API Aws::String SerializePayload() const override; protected: AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The name of the authentication profile to be created.

*/ inline const Aws::String& GetAuthenticationProfileName() const{ return m_authenticationProfileName; } /** *

The name of the authentication profile to be created.

*/ inline bool AuthenticationProfileNameHasBeenSet() const { return m_authenticationProfileNameHasBeenSet; } /** *

The name of the authentication profile to be created.

*/ inline void SetAuthenticationProfileName(const Aws::String& value) { m_authenticationProfileNameHasBeenSet = true; m_authenticationProfileName = value; } /** *

The name of the authentication profile to be created.

*/ inline void SetAuthenticationProfileName(Aws::String&& value) { m_authenticationProfileNameHasBeenSet = true; m_authenticationProfileName = std::move(value); } /** *

The name of the authentication profile to be created.

*/ inline void SetAuthenticationProfileName(const char* value) { m_authenticationProfileNameHasBeenSet = true; m_authenticationProfileName.assign(value); } /** *

The name of the authentication profile to be created.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileName(const Aws::String& value) { SetAuthenticationProfileName(value); return *this;} /** *

The name of the authentication profile to be created.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileName(Aws::String&& value) { SetAuthenticationProfileName(std::move(value)); return *this;} /** *

The name of the authentication profile to be created.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileName(const char* value) { SetAuthenticationProfileName(value); return *this;} /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline const Aws::String& GetAuthenticationProfileContent() const{ return m_authenticationProfileContent; } /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline bool AuthenticationProfileContentHasBeenSet() const { return m_authenticationProfileContentHasBeenSet; } /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline void SetAuthenticationProfileContent(const Aws::String& value) { m_authenticationProfileContentHasBeenSet = true; m_authenticationProfileContent = value; } /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline void SetAuthenticationProfileContent(Aws::String&& value) { m_authenticationProfileContentHasBeenSet = true; m_authenticationProfileContent = std::move(value); } /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline void SetAuthenticationProfileContent(const char* value) { m_authenticationProfileContentHasBeenSet = true; m_authenticationProfileContent.assign(value); } /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileContent(const Aws::String& value) { SetAuthenticationProfileContent(value); return *this;} /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileContent(Aws::String&& value) { SetAuthenticationProfileContent(std::move(value)); return *this;} /** *

The content of the authentication profile in JSON format. The maximum length * of the JSON string is determined by a quota for your account.

*/ inline CreateAuthenticationProfileRequest& WithAuthenticationProfileContent(const char* value) { SetAuthenticationProfileContent(value); return *this;} private: Aws::String m_authenticationProfileName; bool m_authenticationProfileNameHasBeenSet = false; Aws::String m_authenticationProfileContent; bool m_authenticationProfileContentHasBeenSet = false; }; } // namespace Model } // namespace Redshift } // namespace Aws