/** * 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 APIGateway { namespace Model { /** *

Represents the base path that callers of the API must provide as part of the * URL after the domain name.

A custom domain name plus a * BasePathMapping specification identifies a deployed RestApi * in a given stage of the owner Account.

See Also:

AWS * API Reference

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

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline const Aws::String& GetBasePath() const{ return m_basePath; } /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline bool BasePathHasBeenSet() const { return m_basePathHasBeenSet; } /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline void SetBasePath(const Aws::String& value) { m_basePathHasBeenSet = true; m_basePath = value; } /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline void SetBasePath(Aws::String&& value) { m_basePathHasBeenSet = true; m_basePath = std::move(value); } /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline void SetBasePath(const char* value) { m_basePathHasBeenSet = true; m_basePath.assign(value); } /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline BasePathMapping& WithBasePath(const Aws::String& value) { SetBasePath(value); return *this;} /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline BasePathMapping& WithBasePath(Aws::String&& value) { SetBasePath(std::move(value)); return *this;} /** *

The base path name that callers of the API must provide as part of the URL * after the domain name.

*/ inline BasePathMapping& WithBasePath(const char* value) { SetBasePath(value); return *this;} /** *

The string identifier of the associated RestApi.

*/ inline const Aws::String& GetRestApiId() const{ return m_restApiId; } /** *

The string identifier of the associated RestApi.

*/ inline bool RestApiIdHasBeenSet() const { return m_restApiIdHasBeenSet; } /** *

The string identifier of the associated RestApi.

*/ inline void SetRestApiId(const Aws::String& value) { m_restApiIdHasBeenSet = true; m_restApiId = value; } /** *

The string identifier of the associated RestApi.

*/ inline void SetRestApiId(Aws::String&& value) { m_restApiIdHasBeenSet = true; m_restApiId = std::move(value); } /** *

The string identifier of the associated RestApi.

*/ inline void SetRestApiId(const char* value) { m_restApiIdHasBeenSet = true; m_restApiId.assign(value); } /** *

The string identifier of the associated RestApi.

*/ inline BasePathMapping& WithRestApiId(const Aws::String& value) { SetRestApiId(value); return *this;} /** *

The string identifier of the associated RestApi.

*/ inline BasePathMapping& WithRestApiId(Aws::String&& value) { SetRestApiId(std::move(value)); return *this;} /** *

The string identifier of the associated RestApi.

*/ inline BasePathMapping& WithRestApiId(const char* value) { SetRestApiId(value); return *this;} /** *

The name of the associated stage.

*/ inline const Aws::String& GetStage() const{ return m_stage; } /** *

The name of the associated stage.

*/ inline bool StageHasBeenSet() const { return m_stageHasBeenSet; } /** *

The name of the associated stage.

*/ inline void SetStage(const Aws::String& value) { m_stageHasBeenSet = true; m_stage = value; } /** *

The name of the associated stage.

*/ inline void SetStage(Aws::String&& value) { m_stageHasBeenSet = true; m_stage = std::move(value); } /** *

The name of the associated stage.

*/ inline void SetStage(const char* value) { m_stageHasBeenSet = true; m_stage.assign(value); } /** *

The name of the associated stage.

*/ inline BasePathMapping& WithStage(const Aws::String& value) { SetStage(value); return *this;} /** *

The name of the associated stage.

*/ inline BasePathMapping& WithStage(Aws::String&& value) { SetStage(std::move(value)); return *this;} /** *

The name of the associated stage.

*/ inline BasePathMapping& WithStage(const char* value) { SetStage(value); return *this;} private: Aws::String m_basePath; bool m_basePathHasBeenSet; Aws::String m_restApiId; bool m_restApiIdHasBeenSet; Aws::String m_stage; bool m_stageHasBeenSet; }; } // namespace Model } // namespace APIGateway } // namespace Aws