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

The structure of the transit gateway and network configuration that is used * to connect the kdb environment to an internal network.

See Also:

* AWS * API Reference

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

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline const Aws::String& GetTransitGatewayID() const{ return m_transitGatewayID; } /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline bool TransitGatewayIDHasBeenSet() const { return m_transitGatewayIDHasBeenSet; } /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline void SetTransitGatewayID(const Aws::String& value) { m_transitGatewayIDHasBeenSet = true; m_transitGatewayID = value; } /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline void SetTransitGatewayID(Aws::String&& value) { m_transitGatewayIDHasBeenSet = true; m_transitGatewayID = std::move(value); } /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline void SetTransitGatewayID(const char* value) { m_transitGatewayIDHasBeenSet = true; m_transitGatewayID.assign(value); } /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline TransitGatewayConfiguration& WithTransitGatewayID(const Aws::String& value) { SetTransitGatewayID(value); return *this;} /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline TransitGatewayConfiguration& WithTransitGatewayID(Aws::String&& value) { SetTransitGatewayID(std::move(value)); return *this;} /** *

The identifier of the transit gateway created by the customer to connect * outbound traffics from kdb network to your internal network.

*/ inline TransitGatewayConfiguration& WithTransitGatewayID(const char* value) { SetTransitGatewayID(value); return *this;} /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline const Aws::String& GetRoutableCIDRSpace() const{ return m_routableCIDRSpace; } /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline bool RoutableCIDRSpaceHasBeenSet() const { return m_routableCIDRSpaceHasBeenSet; } /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline void SetRoutableCIDRSpace(const Aws::String& value) { m_routableCIDRSpaceHasBeenSet = true; m_routableCIDRSpace = value; } /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline void SetRoutableCIDRSpace(Aws::String&& value) { m_routableCIDRSpaceHasBeenSet = true; m_routableCIDRSpace = std::move(value); } /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline void SetRoutableCIDRSpace(const char* value) { m_routableCIDRSpaceHasBeenSet = true; m_routableCIDRSpace.assign(value); } /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline TransitGatewayConfiguration& WithRoutableCIDRSpace(const Aws::String& value) { SetRoutableCIDRSpace(value); return *this;} /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline TransitGatewayConfiguration& WithRoutableCIDRSpace(Aws::String&& value) { SetRoutableCIDRSpace(std::move(value)); return *this;} /** *

The routing CIDR on behalf of kdb environment. It could be any "/26 range in * the 100.64.0.0 CIDR space. After providing, it will be added to the customer's * transit gateway routing table so that the traffics could be routed to kdb * network.

*/ inline TransitGatewayConfiguration& WithRoutableCIDRSpace(const char* value) { SetRoutableCIDRSpace(value); return *this;} private: Aws::String m_transitGatewayID; bool m_transitGatewayIDHasBeenSet = false; Aws::String m_routableCIDRSpace; bool m_routableCIDRSpaceHasBeenSet = false; }; } // namespace Model } // namespace finspace } // namespace Aws