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

A rule group that Firewall Manager tried to associate with a VPC has the same * priority as a rule group that's already associated.

See Also:

* AWS * API Reference

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

Information about the VPC ID.

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

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline const Aws::String& GetViolationTargetDescription() const{ return m_violationTargetDescription; } /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline bool ViolationTargetDescriptionHasBeenSet() const { return m_violationTargetDescriptionHasBeenSet; } /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline void SetViolationTargetDescription(const Aws::String& value) { m_violationTargetDescriptionHasBeenSet = true; m_violationTargetDescription = value; } /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline void SetViolationTargetDescription(Aws::String&& value) { m_violationTargetDescriptionHasBeenSet = true; m_violationTargetDescription = std::move(value); } /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline void SetViolationTargetDescription(const char* value) { m_violationTargetDescriptionHasBeenSet = true; m_violationTargetDescription.assign(value); } /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline DnsRuleGroupPriorityConflictViolation& WithViolationTargetDescription(const Aws::String& value) { SetViolationTargetDescription(value); return *this;} /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline DnsRuleGroupPriorityConflictViolation& WithViolationTargetDescription(Aws::String&& value) { SetViolationTargetDescription(std::move(value)); return *this;} /** *

A description of the violation that specifies the VPC and the rule group * that's already associated with it.

*/ inline DnsRuleGroupPriorityConflictViolation& WithViolationTargetDescription(const char* value) { SetViolationTargetDescription(value); return *this;} /** *

The priority setting of the two conflicting rule groups.

*/ inline int GetConflictingPriority() const{ return m_conflictingPriority; } /** *

The priority setting of the two conflicting rule groups.

*/ inline bool ConflictingPriorityHasBeenSet() const { return m_conflictingPriorityHasBeenSet; } /** *

The priority setting of the two conflicting rule groups.

*/ inline void SetConflictingPriority(int value) { m_conflictingPriorityHasBeenSet = true; m_conflictingPriority = value; } /** *

The priority setting of the two conflicting rule groups.

*/ inline DnsRuleGroupPriorityConflictViolation& WithConflictingPriority(int value) { SetConflictingPriority(value); return *this;} /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline const Aws::String& GetConflictingPolicyId() const{ return m_conflictingPolicyId; } /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline bool ConflictingPolicyIdHasBeenSet() const { return m_conflictingPolicyIdHasBeenSet; } /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline void SetConflictingPolicyId(const Aws::String& value) { m_conflictingPolicyIdHasBeenSet = true; m_conflictingPolicyId = value; } /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline void SetConflictingPolicyId(Aws::String&& value) { m_conflictingPolicyIdHasBeenSet = true; m_conflictingPolicyId = std::move(value); } /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline void SetConflictingPolicyId(const char* value) { m_conflictingPolicyIdHasBeenSet = true; m_conflictingPolicyId.assign(value); } /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline DnsRuleGroupPriorityConflictViolation& WithConflictingPolicyId(const Aws::String& value) { SetConflictingPolicyId(value); return *this;} /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline DnsRuleGroupPriorityConflictViolation& WithConflictingPolicyId(Aws::String&& value) { SetConflictingPolicyId(std::move(value)); return *this;} /** *

The ID of the Firewall Manager DNS Firewall policy that was already applied * to the VPC. This policy contains the rule group that's already associated with * the VPC.

*/ inline DnsRuleGroupPriorityConflictViolation& WithConflictingPolicyId(const char* value) { SetConflictingPolicyId(value); return *this;} /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline const Aws::Vector& GetUnavailablePriorities() const{ return m_unavailablePriorities; } /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline bool UnavailablePrioritiesHasBeenSet() const { return m_unavailablePrioritiesHasBeenSet; } /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline void SetUnavailablePriorities(const Aws::Vector& value) { m_unavailablePrioritiesHasBeenSet = true; m_unavailablePriorities = value; } /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline void SetUnavailablePriorities(Aws::Vector&& value) { m_unavailablePrioritiesHasBeenSet = true; m_unavailablePriorities = std::move(value); } /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline DnsRuleGroupPriorityConflictViolation& WithUnavailablePriorities(const Aws::Vector& value) { SetUnavailablePriorities(value); return *this;} /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline DnsRuleGroupPriorityConflictViolation& WithUnavailablePriorities(Aws::Vector&& value) { SetUnavailablePriorities(std::move(value)); return *this;} /** *

The priorities of rule groups that are already associated with the VPC. To * retry your operation, choose priority settings that aren't in this list for the * rule groups in your new DNS Firewall policy.

*/ inline DnsRuleGroupPriorityConflictViolation& AddUnavailablePriorities(int value) { m_unavailablePrioritiesHasBeenSet = true; m_unavailablePriorities.push_back(value); return *this; } private: Aws::String m_violationTarget; bool m_violationTargetHasBeenSet = false; Aws::String m_violationTargetDescription; bool m_violationTargetDescriptionHasBeenSet = false; int m_conflictingPriority; bool m_conflictingPriorityHasBeenSet = false; Aws::String m_conflictingPolicyId; bool m_conflictingPolicyIdHasBeenSet = false; Aws::Vector m_unavailablePriorities; bool m_unavailablePrioritiesHasBeenSet = false; }; } // namespace Model } // namespace FMS } // namespace Aws