/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace FMS { namespace Model { /** *

Violation detail for an unexpected gateway route that’s present in a route * table.

See Also:

AWS * API Reference

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

Information about the gateway ID.

*/ inline const Aws::String& GetGatewayId() const{ return m_gatewayId; } /** *

Information about the gateway ID.

*/ inline bool GatewayIdHasBeenSet() const { return m_gatewayIdHasBeenSet; } /** *

Information about the gateway ID.

*/ inline void SetGatewayId(const Aws::String& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = value; } /** *

Information about the gateway ID.

*/ inline void SetGatewayId(Aws::String&& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = std::move(value); } /** *

Information about the gateway ID.

*/ inline void SetGatewayId(const char* value) { m_gatewayIdHasBeenSet = true; m_gatewayId.assign(value); } /** *

Information about the gateway ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithGatewayId(const Aws::String& value) { SetGatewayId(value); return *this;} /** *

Information about the gateway ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithGatewayId(Aws::String&& value) { SetGatewayId(std::move(value)); return *this;} /** *

Information about the gateway ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithGatewayId(const char* value) { SetGatewayId(value); return *this;} /** *

The routes that are in violation.

*/ inline const Aws::Vector& GetViolatingRoutes() const{ return m_violatingRoutes; } /** *

The routes that are in violation.

*/ inline bool ViolatingRoutesHasBeenSet() const { return m_violatingRoutesHasBeenSet; } /** *

The routes that are in violation.

*/ inline void SetViolatingRoutes(const Aws::Vector& value) { m_violatingRoutesHasBeenSet = true; m_violatingRoutes = value; } /** *

The routes that are in violation.

*/ inline void SetViolatingRoutes(Aws::Vector&& value) { m_violatingRoutesHasBeenSet = true; m_violatingRoutes = std::move(value); } /** *

The routes that are in violation.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithViolatingRoutes(const Aws::Vector& value) { SetViolatingRoutes(value); return *this;} /** *

The routes that are in violation.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithViolatingRoutes(Aws::Vector&& value) { SetViolatingRoutes(std::move(value)); return *this;} /** *

The routes that are in violation.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& AddViolatingRoutes(const Route& value) { m_violatingRoutesHasBeenSet = true; m_violatingRoutes.push_back(value); return *this; } /** *

The routes that are in violation.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& AddViolatingRoutes(Route&& value) { m_violatingRoutesHasBeenSet = true; m_violatingRoutes.push_back(std::move(value)); return *this; } /** *

Information about the route table.

*/ inline const Aws::String& GetRouteTableId() const{ return m_routeTableId; } /** *

Information about the route table.

*/ inline bool RouteTableIdHasBeenSet() const { return m_routeTableIdHasBeenSet; } /** *

Information about the route table.

*/ inline void SetRouteTableId(const Aws::String& value) { m_routeTableIdHasBeenSet = true; m_routeTableId = value; } /** *

Information about the route table.

*/ inline void SetRouteTableId(Aws::String&& value) { m_routeTableIdHasBeenSet = true; m_routeTableId = std::move(value); } /** *

Information about the route table.

*/ inline void SetRouteTableId(const char* value) { m_routeTableIdHasBeenSet = true; m_routeTableId.assign(value); } /** *

Information about the route table.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithRouteTableId(const Aws::String& value) { SetRouteTableId(value); return *this;} /** *

Information about the route table.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithRouteTableId(Aws::String&& value) { SetRouteTableId(std::move(value)); return *this;} /** *

Information about the route table.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithRouteTableId(const char* value) { SetRouteTableId(value); return *this;} /** *

Information about the VPC ID.

*/ inline const Aws::String& GetVpcId() const{ return m_vpcId; } /** *

Information about the VPC ID.

*/ inline bool VpcIdHasBeenSet() const { return m_vpcIdHasBeenSet; } /** *

Information about the VPC ID.

*/ inline void SetVpcId(const Aws::String& value) { m_vpcIdHasBeenSet = true; m_vpcId = value; } /** *

Information about the VPC ID.

*/ inline void SetVpcId(Aws::String&& value) { m_vpcIdHasBeenSet = true; m_vpcId = std::move(value); } /** *

Information about the VPC ID.

*/ inline void SetVpcId(const char* value) { m_vpcIdHasBeenSet = true; m_vpcId.assign(value); } /** *

Information about the VPC ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithVpcId(const Aws::String& value) { SetVpcId(value); return *this;} /** *

Information about the VPC ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithVpcId(Aws::String&& value) { SetVpcId(std::move(value)); return *this;} /** *

Information about the VPC ID.

*/ inline NetworkFirewallUnexpectedGatewayRoutesViolation& WithVpcId(const char* value) { SetVpcId(value); return *this;} private: Aws::String m_gatewayId; bool m_gatewayIdHasBeenSet = false; Aws::Vector m_violatingRoutes; bool m_violatingRoutesHasBeenSet = false; Aws::String m_routeTableId; bool m_routeTableIdHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; }; } // namespace Model } // namespace FMS } // namespace Aws