/** * 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 namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace MigrationHubRefactorSpaces { namespace Model { class CreateRouteResult { public: AWS_MIGRATIONHUBREFACTORSPACES_API CreateRouteResult(); AWS_MIGRATIONHUBREFACTORSPACES_API CreateRouteResult(const Aws::AmazonWebServiceResult& result); AWS_MIGRATIONHUBREFACTORSPACES_API CreateRouteResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The ID of the application in which the route is created.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

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

The Amazon Resource Name (ARN) of the route. The format for this ARN is * arn:aws:refactor-spaces:region:account-id:resource-type/resource-id * . For more information about ARNs, see * Amazon Resource Names (ARNs) in the Amazon Web Services General * Reference.

*/ inline CreateRouteResult& 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 CreateRouteResult& WithCreatedByAccountId(const Aws::String& value) { SetCreatedByAccountId(value); return *this;} /** *

The Amazon Web Services account ID of the route creator.

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

The Amazon Web Services account ID of the route creator.

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

A timestamp that indicates when the route is created.

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

A timestamp that indicates when the route is created.

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

A timestamp that indicates when the route is created.

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

A timestamp that indicates when the route is created.

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

A timestamp that indicates when the route is created.

*/ inline CreateRouteResult& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(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 CreateRouteResult& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

A timestamp that indicates when the route was last updated.

*/ inline CreateRouteResult& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(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 CreateRouteResult& WithOwnerAccountId(const Aws::String& value) { SetOwnerAccountId(value); return *this;} /** *

The Amazon Web Services account ID of the route owner.

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

The Amazon Web Services account ID of the route owner.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The unique identifier of the route.

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

The route type of the route.

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

The route type of the route.

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

The route type of the route.

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

The route type of the route.

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

The route type of the route.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The ID of service in which the route is created. Traffic that matches this * route is forwarded to this service.

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

The current state of the route. Activation state only allows * ACTIVE or INACTIVE as user inputs. FAILED * is a route state that is system generated.

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

The current state of the route. Activation state only allows * ACTIVE or INACTIVE as user inputs. FAILED * is a route state that is system generated.

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

The current state of the route. Activation state only allows * ACTIVE or INACTIVE as user inputs. FAILED * is a route state that is system generated.

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

The current state of the route. Activation state only allows * ACTIVE or INACTIVE as user inputs. FAILED * is a route state that is system generated.

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

The current state of the route. Activation state only allows * ACTIVE or INACTIVE as user inputs. FAILED * is a route state that is system generated.

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

The tags assigned to the created 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 created 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 created 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 created route. A tag is a label that you assign to * an Amazon Web Services resource. Each tag consists of a key-value pair.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

*/ inline CreateRouteResult& AddTags(const char* key, const char* value) { m_tags.emplace(key, value); return *this; } /** *

Configuration for the URI path route type.

*/ inline const UriPathRouteInput& GetUriPathRoute() const{ return m_uriPathRoute; } /** *

Configuration for the URI path route type.

*/ inline void SetUriPathRoute(const UriPathRouteInput& value) { m_uriPathRoute = value; } /** *

Configuration for the URI path route type.

*/ inline void SetUriPathRoute(UriPathRouteInput&& value) { m_uriPathRoute = std::move(value); } /** *

Configuration for the URI path route type.

*/ inline CreateRouteResult& WithUriPathRoute(const UriPathRouteInput& value) { SetUriPathRoute(value); return *this;} /** *

Configuration for the URI path route type.

*/ inline CreateRouteResult& WithUriPathRoute(UriPathRouteInput&& value) { SetUriPathRoute(std::move(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 CreateRouteResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CreateRouteResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CreateRouteResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_applicationId; Aws::String m_arn; Aws::String m_createdByAccountId; Aws::Utils::DateTime m_createdTime; Aws::Utils::DateTime m_lastUpdatedTime; Aws::String m_ownerAccountId; Aws::String m_routeId; RouteType m_routeType; Aws::String m_serviceId; RouteState m_state; Aws::Map m_tags; UriPathRouteInput m_uriPathRoute; Aws::String m_requestId; }; } // namespace Model } // namespace MigrationHubRefactorSpaces } // namespace Aws