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

A documentation part for a targeted API entity.

See Also:

AWS * API Reference

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

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline DocumentationPart& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline DocumentationPart& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

The DocumentationPart identifier, generated by API Gateway when the * DocumentationPart is created.

*/ inline DocumentationPart& WithId(const char* value) { SetId(value); return *this;} /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline const DocumentationPartLocation& GetLocation() const{ return m_location; } /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline void SetLocation(const DocumentationPartLocation& value) { m_locationHasBeenSet = true; m_location = value; } /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline void SetLocation(DocumentationPartLocation&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline DocumentationPart& WithLocation(const DocumentationPartLocation& value) { SetLocation(value); return *this;} /** *

The location of the API entity to which the documentation applies. Valid * fields depend on the targeted API entity type. All the valid location fields are * not required. If not explicitly specified, a valid location field is treated as * a wildcard and associated documentation content may be inherited by matching * entities, unless overridden.

*/ inline DocumentationPart& WithLocation(DocumentationPartLocation&& value) { SetLocation(std::move(value)); return *this;} /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline const Aws::String& GetProperties() const{ return m_properties; } /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline bool PropertiesHasBeenSet() const { return m_propertiesHasBeenSet; } /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline void SetProperties(const Aws::String& value) { m_propertiesHasBeenSet = true; m_properties = value; } /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline void SetProperties(Aws::String&& value) { m_propertiesHasBeenSet = true; m_properties = std::move(value); } /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline void SetProperties(const char* value) { m_propertiesHasBeenSet = true; m_properties.assign(value); } /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline DocumentationPart& WithProperties(const Aws::String& value) { SetProperties(value); return *this;} /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline DocumentationPart& WithProperties(Aws::String&& value) { SetProperties(std::move(value)); return *this;} /** *

A content map of API-specific key-value pairs describing the targeted API * entity. The map must be encoded as a JSON string, e.g., "{ * \"description\": \"The API does ...\" }". Only OpenAPI-compliant * documentation-related fields from the properties map are exported and, hence, * published as part of the API entity definitions, while the original * documentation parts are exported in a OpenAPI extension of * x-amazon-apigateway-documentation.

*/ inline DocumentationPart& WithProperties(const char* value) { SetProperties(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } inline DocumentationPart& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DocumentationPart& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DocumentationPart& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; DocumentationPartLocation m_location; bool m_locationHasBeenSet = false; Aws::String m_properties; bool m_propertiesHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace APIGateway } // namespace Aws