/** * 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 KinesisAnalyticsV2 { namespace Model { /** */ class CreateApplicationPresignedUrlRequest : public KinesisAnalyticsV2Request { public: AWS_KINESISANALYTICSV2_API CreateApplicationPresignedUrlRequest(); // 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 "CreateApplicationPresignedUrl"; } AWS_KINESISANALYTICSV2_API Aws::String SerializePayload() const override; AWS_KINESISANALYTICSV2_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the application.

*/ inline const Aws::String& GetApplicationName() const{ return m_applicationName; } /** *

The name of the application.

*/ inline bool ApplicationNameHasBeenSet() const { return m_applicationNameHasBeenSet; } /** *

The name of the application.

*/ inline void SetApplicationName(const Aws::String& value) { m_applicationNameHasBeenSet = true; m_applicationName = value; } /** *

The name of the application.

*/ inline void SetApplicationName(Aws::String&& value) { m_applicationNameHasBeenSet = true; m_applicationName = std::move(value); } /** *

The name of the application.

*/ inline void SetApplicationName(const char* value) { m_applicationNameHasBeenSet = true; m_applicationName.assign(value); } /** *

The name of the application.

*/ inline CreateApplicationPresignedUrlRequest& WithApplicationName(const Aws::String& value) { SetApplicationName(value); return *this;} /** *

The name of the application.

*/ inline CreateApplicationPresignedUrlRequest& WithApplicationName(Aws::String&& value) { SetApplicationName(std::move(value)); return *this;} /** *

The name of the application.

*/ inline CreateApplicationPresignedUrlRequest& WithApplicationName(const char* value) { SetApplicationName(value); return *this;} /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline const UrlType& GetUrlType() const{ return m_urlType; } /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline bool UrlTypeHasBeenSet() const { return m_urlTypeHasBeenSet; } /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline void SetUrlType(const UrlType& value) { m_urlTypeHasBeenSet = true; m_urlType = value; } /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline void SetUrlType(UrlType&& value) { m_urlTypeHasBeenSet = true; m_urlType = std::move(value); } /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline CreateApplicationPresignedUrlRequest& WithUrlType(const UrlType& value) { SetUrlType(value); return *this;} /** *

The type of the extension for which to create and return a URL. Currently, * the only valid extension URL type is FLINK_DASHBOARD_URL.

*/ inline CreateApplicationPresignedUrlRequest& WithUrlType(UrlType&& value) { SetUrlType(std::move(value)); return *this;} /** *

The duration in seconds for which the returned URL will be valid.

*/ inline long long GetSessionExpirationDurationInSeconds() const{ return m_sessionExpirationDurationInSeconds; } /** *

The duration in seconds for which the returned URL will be valid.

*/ inline bool SessionExpirationDurationInSecondsHasBeenSet() const { return m_sessionExpirationDurationInSecondsHasBeenSet; } /** *

The duration in seconds for which the returned URL will be valid.

*/ inline void SetSessionExpirationDurationInSeconds(long long value) { m_sessionExpirationDurationInSecondsHasBeenSet = true; m_sessionExpirationDurationInSeconds = value; } /** *

The duration in seconds for which the returned URL will be valid.

*/ inline CreateApplicationPresignedUrlRequest& WithSessionExpirationDurationInSeconds(long long value) { SetSessionExpirationDurationInSeconds(value); return *this;} private: Aws::String m_applicationName; bool m_applicationNameHasBeenSet = false; UrlType m_urlType; bool m_urlTypeHasBeenSet = false; long long m_sessionExpirationDurationInSeconds; bool m_sessionExpirationDurationInSecondsHasBeenSet = false; }; } // namespace Model } // namespace KinesisAnalyticsV2 } // namespace Aws