/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace MigrationHubRefactorSpaces { namespace Model { class GetRouteResult { public: AWS_MIGRATIONHUBREFACTORSPACES_API GetRouteResult(); AWS_MIGRATIONHUBREFACTORSPACES_API GetRouteResult(const Aws::AmazonWebServiceResult& result); AWS_MIGRATIONHUBREFACTORSPACES_API GetRouteResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

If set to true, this option appends the source path to the * service URL endpoint.

*/ inline bool GetAppendSourcePath() const{ return m_appendSourcePath; } /** *

If set to true, this option appends the source path to the * service URL endpoint.

*/ inline void SetAppendSourcePath(bool value) { m_appendSourcePath = value; } /** *

If set to true, this option appends the source path to the * service URL endpoint.

*/ inline GetRouteResult& WithAppendSourcePath(bool value) { SetAppendSourcePath(value); return *this;} /** *

The ID of the application that the route belongs to.

*/ inline const Aws::String& GetApplicationId() const{ return m_applicationId; } /** *

The ID of the application that the route belongs to.

*/ inline void SetApplicationId(const Aws::String& value) { m_applicationId = value; } /** *

The ID of the application that the route belongs to.

*/ inline void SetApplicationId(Aws::String&& value) { m_applicationId = std::move(value); } /** *

The ID of the application that the route belongs to.

*/ inline void SetApplicationId(const char* value) { m_applicationId.assign(value); } /** *

The ID of the application that the route belongs to.

*/ inline GetRouteResult& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;} /** *

The ID of the application that the route belongs to.

*/ inline GetRouteResult& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;} /** *

The ID of the application that the route belongs to.

*/ inline GetRouteResult& WithApplicationId(const char* value) { SetApplicationId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the route.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) of the route.

*/ inline void SetArn(const Aws::String& value) { m_arn = value; } /** *

The Amazon Resource Name (ARN) of the route.

*/ inline void SetArn(Aws::String&& value) { m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the route.

*/ inline void SetArn(const char* value) { m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) of the route.

*/ inline GetRouteResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the route.

*/ inline GetRouteResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the route.

*/ inline GetRouteResult& WithArn(const char* value) { SetArn(value); return *this;} /** *

The Amazon Web Services account ID of the route creator.

*/ inline const Aws::String& GetCreatedByAccountId() const{ return m_createdByAccountId; } /** *

The Amazon Web Services account ID of the route creator.

*/ inline void SetCreatedByAccountId(const Aws::String& value) { m_createdByAccountId = value; } /** *

The Amazon Web Services account ID of the route creator.

*/ inline void SetCreatedByAccountId(Aws::String&& value) { m_createdByAccountId = std::move(value); } /** *

The Amazon Web Services account ID of the route creator.

*/ inline void SetCreatedByAccountId(const char* value) { m_createdByAccountId.assign(value); } /** *

The Amazon Web Services account ID of the route creator.

*/ inline GetRouteResult& WithCreatedByAccountId(const Aws::String& value) { SetCreatedByAccountId(value); return *this;} /** *

The Amazon Web Services account ID of the route creator.

*/ inline GetRouteResult& WithCreatedByAccountId(Aws::String&& value) { SetCreatedByAccountId(std::move(value)); return *this;} /** *

The Amazon Web Services account ID of the route creator.

*/ inline GetRouteResult& WithCreatedByAccountId(const char* value) { SetCreatedByAccountId(value); return *this;} /** *

The timestamp of when the route is created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The timestamp of when the route is created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTime = value; } /** *

The timestamp of when the route is created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTime = std::move(value); } /** *

The timestamp of when the route is created.

*/ inline GetRouteResult& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The timestamp of when the route is created.

*/ inline GetRouteResult& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

Unique identifier of the environment.

*/ inline const Aws::String& GetEnvironmentId() const{ return m_environmentId; } /** *

Unique identifier of the environment.

*/ inline void SetEnvironmentId(const Aws::String& value) { m_environmentId = value; } /** *

Unique identifier of the environment.

*/ inline void SetEnvironmentId(Aws::String&& value) { m_environmentId = std::move(value); } /** *

Unique identifier of the environment.

*/ inline void SetEnvironmentId(const char* value) { m_environmentId.assign(value); } /** *

Unique identifier of the environment.

*/ inline GetRouteResult& WithEnvironmentId(const Aws::String& value) { SetEnvironmentId(value); return *this;} /** *

Unique identifier of the environment.

*/ inline GetRouteResult& WithEnvironmentId(Aws::String&& value) { SetEnvironmentId(std::move(value)); return *this;} /** *

Unique identifier of the environment.

*/ inline GetRouteResult& WithEnvironmentId(const char* value) { SetEnvironmentId(value); return *this;} /** *

Any error associated with the route resource.

*/ inline const ErrorResponse& GetError() const{ return m_error; } /** *

Any error associated with the route resource.

*/ inline void SetError(const ErrorResponse& value) { m_error = value; } /** *

Any error associated with the route resource.

*/ inline void SetError(ErrorResponse&& value) { m_error = std::move(value); } /** *

Any error associated with the route resource.

*/ inline GetRouteResult& WithError(const ErrorResponse& value) { SetError(value); return *this;} /** *

Any error associated with the route resource.

*/ inline GetRouteResult& WithError(ErrorResponse&& value) { SetError(std::move(value)); return *this;} /** *

Indicates whether to match all subpaths of the given source path. If this * value is false, requests must match the source path exactly before * they are forwarded to this route's service.

*/ inline bool GetIncludeChildPaths() const{ return m_includeChildPaths; } /** *

Indicates whether to match all subpaths of the given source path. If this * value is false, requests must match the source path exactly before * they are forwarded to this route's service.

*/ inline void SetIncludeChildPaths(bool value) { m_includeChildPaths = value; } /** *

Indicates whether to match all subpaths of the given source path. If this * value is false, requests must match the source path exactly before * they are forwarded to this route's service.

*/ inline GetRouteResult& WithIncludeChildPaths(bool value) { SetIncludeChildPaths(value); return *this;} /** *

A timestamp that indicates when the route was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *

A timestamp that indicates when the route was last updated.

*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTime = value; } /** *

A timestamp that indicates when the route was last updated.

*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTime = std::move(value); } /** *

A timestamp that indicates when the route was last updated.

*/ inline GetRouteResult& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

A timestamp that indicates when the route was last updated.

*/ inline GetRouteResult& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline const Aws::Vector& GetMethods() const{ return m_methods; } /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline void SetMethods(const Aws::Vector& value) { m_methods = value; } /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline void SetMethods(Aws::Vector&& value) { m_methods = std::move(value); } /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline GetRouteResult& WithMethods(const Aws::Vector& value) { SetMethods(value); return *this;} /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline GetRouteResult& WithMethods(Aws::Vector&& value) { SetMethods(std::move(value)); return *this;} /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline GetRouteResult& AddMethods(const HttpMethod& value) { m_methods.push_back(value); return *this; } /** *

A list of HTTP methods to match. An empty list matches all values. If a * method is present, only HTTP requests using that method are forwarded to this * route’s service.

*/ inline GetRouteResult& AddMethods(HttpMethod&& value) { m_methods.push_back(std::move(value)); return *this; } /** *

The Amazon Web Services account ID of the route owner.

*/ inline const Aws::String& GetOwnerAccountId() const{ return m_ownerAccountId; } /** *

The Amazon Web Services account ID of the route owner.

*/ inline void SetOwnerAccountId(const Aws::String& value) { m_ownerAccountId = value; } /** *

The Amazon Web Services account ID of the route owner.

*/ inline void SetOwnerAccountId(Aws::String&& value) { m_ownerAccountId = std::move(value); } /** *

The Amazon Web Services account ID of the route owner.

*/ inline void SetOwnerAccountId(const char* value) { m_ownerAccountId.assign(value); } /** *

The Amazon Web Services account ID of the route owner.

*/ inline GetRouteResult& WithOwnerAccountId(const Aws::String& value) { SetOwnerAccountId(value); return *this;} /** *

The Amazon Web Services account ID of the route owner.

*/ inline GetRouteResult& WithOwnerAccountId(Aws::String&& value) { SetOwnerAccountId(std::move(value)); return *this;} /** *

The Amazon Web Services account ID of the route owner.

*/ inline GetRouteResult& WithOwnerAccountId(const char* value) { SetOwnerAccountId(value); return *this;} /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline const Aws::Map& GetPathResourceToId() const{ return m_pathResourceToId; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline void SetPathResourceToId(const Aws::Map& value) { m_pathResourceToId = value; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline void SetPathResourceToId(Aws::Map&& value) { m_pathResourceToId = std::move(value); } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& WithPathResourceToId(const Aws::Map& value) { SetPathResourceToId(value); return *this;} /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& WithPathResourceToId(Aws::Map&& value) { SetPathResourceToId(std::move(value)); return *this;} /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(const Aws::String& key, const Aws::String& value) { m_pathResourceToId.emplace(key, value); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(Aws::String&& key, const Aws::String& value) { m_pathResourceToId.emplace(std::move(key), value); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(const Aws::String& key, Aws::String&& value) { m_pathResourceToId.emplace(key, std::move(value)); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(Aws::String&& key, Aws::String&& value) { m_pathResourceToId.emplace(std::move(key), std::move(value)); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(const char* key, Aws::String&& value) { m_pathResourceToId.emplace(key, std::move(value)); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(Aws::String&& key, const char* value) { m_pathResourceToId.emplace(std::move(key), value); return *this; } /** *

A mapping of Amazon API Gateway path resources to resource IDs.

*/ inline GetRouteResult& AddPathResourceToId(const char* key, const char* value) { m_pathResourceToId.emplace(key, value); return *this; } /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline const Aws::String& GetRouteId() const{ return m_routeId; } /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline void SetRouteId(const Aws::String& value) { m_routeId = value; } /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline void SetRouteId(Aws::String&& value) { m_routeId = std::move(value); } /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline void SetRouteId(const char* value) { m_routeId.assign(value); } /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline GetRouteResult& WithRouteId(const Aws::String& value) { SetRouteId(value); return *this;} /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline GetRouteResult& WithRouteId(Aws::String&& value) { SetRouteId(std::move(value)); return *this;} /** *

The unique identifier of the route.

DEFAULT: All traffic that * does not match another route is forwarded to the default route. Applications * must have a default route before any other routes can be created.

* URI_PATH: A route that is based on a URI path.

*/ inline GetRouteResult& WithRouteId(const char* value) { SetRouteId(value); return *this;} /** *

The type of route.

*/ inline const RouteType& GetRouteType() const{ return m_routeType; } /** *

The type of route.

*/ inline void SetRouteType(const RouteType& value) { m_routeType = value; } /** *

The type of route.

*/ inline void SetRouteType(RouteType&& value) { m_routeType = std::move(value); } /** *

The type of route.

*/ inline GetRouteResult& WithRouteType(const RouteType& value) { SetRouteType(value); return *this;} /** *

The type of route.

*/ inline GetRouteResult& WithRouteType(RouteType&& value) { SetRouteType(std::move(value)); return *this;} /** *

The unique identifier of the service.

*/ inline const Aws::String& GetServiceId() const{ return m_serviceId; } /** *

The unique identifier of the service.

*/ inline void SetServiceId(const Aws::String& value) { m_serviceId = value; } /** *

The unique identifier of the service.

*/ inline void SetServiceId(Aws::String&& value) { m_serviceId = std::move(value); } /** *

The unique identifier of the service.

*/ inline void SetServiceId(const char* value) { m_serviceId.assign(value); } /** *

The unique identifier of the service.

*/ inline GetRouteResult& WithServiceId(const Aws::String& value) { SetServiceId(value); return *this;} /** *

The unique identifier of the service.

*/ inline GetRouteResult& WithServiceId(Aws::String&& value) { SetServiceId(std::move(value)); return *this;} /** *

The unique identifier of the service.

*/ inline GetRouteResult& WithServiceId(const char* value) { SetServiceId(value); return *this;} /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline const Aws::String& GetSourcePath() const{ return m_sourcePath; } /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline void SetSourcePath(const Aws::String& value) { m_sourcePath = value; } /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline void SetSourcePath(Aws::String&& value) { m_sourcePath = std::move(value); } /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline void SetSourcePath(const char* value) { m_sourcePath.assign(value); } /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline GetRouteResult& WithSourcePath(const Aws::String& value) { SetSourcePath(value); return *this;} /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline GetRouteResult& WithSourcePath(Aws::String&& value) { SetSourcePath(std::move(value)); return *this;} /** *

This is the path that Refactor Spaces uses to match traffic. Paths must start * with / and are relative to the base of the application. To use path * parameters in the source path, add a variable in curly braces. For example, the * resource path {user} represents a path parameter called 'user'.

*/ inline GetRouteResult& WithSourcePath(const char* value) { SetSourcePath(value); return *this;} /** *

The current state of the route.

*/ inline const RouteState& GetState() const{ return m_state; } /** *

The current state of the route.

*/ inline void SetState(const RouteState& value) { m_state = value; } /** *

The current state of the route.

*/ inline void SetState(RouteState&& value) { m_state = std::move(value); } /** *

The current state of the route.

*/ inline GetRouteResult& WithState(const RouteState& value) { SetState(value); return *this;} /** *

The current state of the route.

*/ inline GetRouteResult& WithState(RouteState&& value) { SetState(std::move(value)); return *this;} /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline const Aws::Map& GetTags() const{ return m_tags; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline void SetTags(const Aws::Map& value) { m_tags = value; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline void SetTags(Aws::Map&& value) { m_tags = std::move(value); } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& WithTags(const Aws::Map& value) { SetTags(value); return *this;} /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& WithTags(Aws::Map&& value) { SetTags(std::move(value)); return *this;} /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(const Aws::String& key, const Aws::String& value) { m_tags.emplace(key, value); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(Aws::String&& key, const Aws::String& value) { m_tags.emplace(std::move(key), value); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(const Aws::String& key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(Aws::String&& key, Aws::String&& value) { m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(const char* key, Aws::String&& value) { m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(Aws::String&& key, const char* value) { m_tags.emplace(std::move(key), value); return *this; } /** *

The tags assigned to the route. A tag is a label that you assign to an Amazon * Web Services resource. Each tag consists of a key-value pair.

*/ inline GetRouteResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetRouteResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetRouteResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetRouteResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: bool m_appendSourcePath; Aws::String m_applicationId; Aws::String m_arn; Aws::String m_createdByAccountId; Aws::Utils::DateTime m_createdTime; Aws::String m_environmentId; ErrorResponse m_error; bool m_includeChildPaths; Aws::Utils::DateTime m_lastUpdatedTime; Aws::Vector m_methods; Aws::String m_ownerAccountId; Aws::Map m_pathResourceToId; Aws::String m_routeId; RouteType m_routeType; Aws::String m_serviceId; Aws::String m_sourcePath; RouteState m_state; Aws::Map m_tags; Aws::String m_requestId; }; } // namespace Model } // namespace MigrationHubRefactorSpaces } // namespace Aws