/** * 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 internet gateway route with an inactive state in the * customer subnet route table or Network Firewall subnet route * table.

See Also:

AWS * API Reference

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

The subnet that has an inactive state.

*/ inline const Aws::String& GetViolationTarget() const{ return m_violationTarget; } /** *

The subnet that has an inactive state.

*/ inline bool ViolationTargetHasBeenSet() const { return m_violationTargetHasBeenSet; } /** *

The subnet that has an inactive state.

*/ inline void SetViolationTarget(const Aws::String& value) { m_violationTargetHasBeenSet = true; m_violationTarget = value; } /** *

The subnet that has an inactive state.

*/ inline void SetViolationTarget(Aws::String&& value) { m_violationTargetHasBeenSet = true; m_violationTarget = std::move(value); } /** *

The subnet that has an inactive state.

*/ inline void SetViolationTarget(const char* value) { m_violationTargetHasBeenSet = true; m_violationTarget.assign(value); } /** *

The subnet that has an inactive state.

*/ inline NetworkFirewallBlackHoleRouteDetectedViolation& WithViolationTarget(const Aws::String& value) { SetViolationTarget(value); return *this;} /** *

The subnet that has an inactive state.

*/ inline NetworkFirewallBlackHoleRouteDetectedViolation& WithViolationTarget(Aws::String&& value) { SetViolationTarget(std::move(value)); return *this;} /** *

The subnet that has an inactive state.

*/ inline NetworkFirewallBlackHoleRouteDetectedViolation& WithViolationTarget(const char* value) { SetViolationTarget(value); return *this;} /** *

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the route table ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

*/ inline NetworkFirewallBlackHoleRouteDetectedViolation& WithVpcId(const char* value) { SetVpcId(value); return *this;} /** *

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

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

Information about the route or routes that are in violation.

*/ inline NetworkFirewallBlackHoleRouteDetectedViolation& AddViolatingRoutes(Route&& value) { m_violatingRoutesHasBeenSet = true; m_violatingRoutes.push_back(std::move(value)); return *this; } private: Aws::String m_violationTarget; bool m_violationTargetHasBeenSet = false; Aws::String m_routeTableId; bool m_routeTableIdHasBeenSet = false; Aws::String m_vpcId; bool m_vpcIdHasBeenSet = false; Aws::Vector m_violatingRoutes; bool m_violatingRoutesHasBeenSet = false; }; } // namespace Model } // namespace FMS } // namespace Aws