/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include <aws/amplifybackend/AmplifyBackend_EXPORTS.h> #include <aws/amplifybackend/AmplifyBackendRequest.h> #include <aws/core/utils/memory/stl/AWSString.h> #include <aws/amplifybackend/model/BackendAPIResourceConfig.h> #include <utility> namespace Aws { namespace AmplifyBackend { namespace Model { /** * <p>The request body for CreateBackendAPI.</p><p><h3>See Also:</h3> <a * href="http://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAPIRequest">AWS * API Reference</a></p> */ class CreateBackendAPIRequest : public AmplifyBackendRequest { public: AWS_AMPLIFYBACKEND_API CreateBackendAPIRequest(); // 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 "CreateBackendAPI"; } AWS_AMPLIFYBACKEND_API Aws::String SerializePayload() const override; /** * <p>The app ID.</p> */ inline const Aws::String& GetAppId() const{ return m_appId; } /** * <p>The app ID.</p> */ inline bool AppIdHasBeenSet() const { return m_appIdHasBeenSet; } /** * <p>The app ID.</p> */ inline void SetAppId(const Aws::String& value) { m_appIdHasBeenSet = true; m_appId = value; } /** * <p>The app ID.</p> */ inline void SetAppId(Aws::String&& value) { m_appIdHasBeenSet = true; m_appId = std::move(value); } /** * <p>The app ID.</p> */ inline void SetAppId(const char* value) { m_appIdHasBeenSet = true; m_appId.assign(value); } /** * <p>The app ID.</p> */ inline CreateBackendAPIRequest& WithAppId(const Aws::String& value) { SetAppId(value); return *this;} /** * <p>The app ID.</p> */ inline CreateBackendAPIRequest& WithAppId(Aws::String&& value) { SetAppId(std::move(value)); return *this;} /** * <p>The app ID.</p> */ inline CreateBackendAPIRequest& WithAppId(const char* value) { SetAppId(value); return *this;} /** * <p>The name of the backend environment.</p> */ inline const Aws::String& GetBackendEnvironmentName() const{ return m_backendEnvironmentName; } /** * <p>The name of the backend environment.</p> */ inline bool BackendEnvironmentNameHasBeenSet() const { return m_backendEnvironmentNameHasBeenSet; } /** * <p>The name of the backend environment.</p> */ inline void SetBackendEnvironmentName(const Aws::String& value) { m_backendEnvironmentNameHasBeenSet = true; m_backendEnvironmentName = value; } /** * <p>The name of the backend environment.</p> */ inline void SetBackendEnvironmentName(Aws::String&& value) { m_backendEnvironmentNameHasBeenSet = true; m_backendEnvironmentName = std::move(value); } /** * <p>The name of the backend environment.</p> */ inline void SetBackendEnvironmentName(const char* value) { m_backendEnvironmentNameHasBeenSet = true; m_backendEnvironmentName.assign(value); } /** * <p>The name of the backend environment.</p> */ inline CreateBackendAPIRequest& WithBackendEnvironmentName(const Aws::String& value) { SetBackendEnvironmentName(value); return *this;} /** * <p>The name of the backend environment.</p> */ inline CreateBackendAPIRequest& WithBackendEnvironmentName(Aws::String&& value) { SetBackendEnvironmentName(std::move(value)); return *this;} /** * <p>The name of the backend environment.</p> */ inline CreateBackendAPIRequest& WithBackendEnvironmentName(const char* value) { SetBackendEnvironmentName(value); return *this;} /** * <p>The resource configuration for this request.</p> */ inline const BackendAPIResourceConfig& GetResourceConfig() const{ return m_resourceConfig; } /** * <p>The resource configuration for this request.</p> */ inline bool ResourceConfigHasBeenSet() const { return m_resourceConfigHasBeenSet; } /** * <p>The resource configuration for this request.</p> */ inline void SetResourceConfig(const BackendAPIResourceConfig& value) { m_resourceConfigHasBeenSet = true; m_resourceConfig = value; } /** * <p>The resource configuration for this request.</p> */ inline void SetResourceConfig(BackendAPIResourceConfig&& value) { m_resourceConfigHasBeenSet = true; m_resourceConfig = std::move(value); } /** * <p>The resource configuration for this request.</p> */ inline CreateBackendAPIRequest& WithResourceConfig(const BackendAPIResourceConfig& value) { SetResourceConfig(value); return *this;} /** * <p>The resource configuration for this request.</p> */ inline CreateBackendAPIRequest& WithResourceConfig(BackendAPIResourceConfig&& value) { SetResourceConfig(std::move(value)); return *this;} /** * <p>The name of this resource.</p> */ inline const Aws::String& GetResourceName() const{ return m_resourceName; } /** * <p>The name of this resource.</p> */ inline bool ResourceNameHasBeenSet() const { return m_resourceNameHasBeenSet; } /** * <p>The name of this resource.</p> */ inline void SetResourceName(const Aws::String& value) { m_resourceNameHasBeenSet = true; m_resourceName = value; } /** * <p>The name of this resource.</p> */ inline void SetResourceName(Aws::String&& value) { m_resourceNameHasBeenSet = true; m_resourceName = std::move(value); } /** * <p>The name of this resource.</p> */ inline void SetResourceName(const char* value) { m_resourceNameHasBeenSet = true; m_resourceName.assign(value); } /** * <p>The name of this resource.</p> */ inline CreateBackendAPIRequest& WithResourceName(const Aws::String& value) { SetResourceName(value); return *this;} /** * <p>The name of this resource.</p> */ inline CreateBackendAPIRequest& WithResourceName(Aws::String&& value) { SetResourceName(std::move(value)); return *this;} /** * <p>The name of this resource.</p> */ inline CreateBackendAPIRequest& WithResourceName(const char* value) { SetResourceName(value); return *this;} private: Aws::String m_appId; bool m_appIdHasBeenSet = false; Aws::String m_backendEnvironmentName; bool m_backendEnvironmentNameHasBeenSet = false; BackendAPIResourceConfig m_resourceConfig; bool m_resourceConfigHasBeenSet = false; Aws::String m_resourceName; bool m_resourceNameHasBeenSet = false; }; } // namespace Model } // namespace AmplifyBackend } // namespace Aws