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

The search criteria to be used to return security profiles.

The * name field support "contains" queries with a minimum of 2 * characters and maximum of 25 characters. Any queries with character lengths * outside of this range will throw invalid results.

See * Also:

AWS * API Reference

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

A list of conditions which would be applied together with an OR * condition.

*/ inline const Aws::Vector& GetOrConditions() const{ return m_orConditions; } /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline bool OrConditionsHasBeenSet() const { return m_orConditionsHasBeenSet; } /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline void SetOrConditions(const Aws::Vector& value) { m_orConditionsHasBeenSet = true; m_orConditions = value; } /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline void SetOrConditions(Aws::Vector&& value) { m_orConditionsHasBeenSet = true; m_orConditions = std::move(value); } /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline SecurityProfileSearchCriteria& WithOrConditions(const Aws::Vector& value) { SetOrConditions(value); return *this;} /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline SecurityProfileSearchCriteria& WithOrConditions(Aws::Vector&& value) { SetOrConditions(std::move(value)); return *this;} /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline SecurityProfileSearchCriteria& AddOrConditions(const SecurityProfileSearchCriteria& value) { m_orConditionsHasBeenSet = true; m_orConditions.push_back(value); return *this; } /** *

A list of conditions which would be applied together with an OR * condition.

*/ inline SecurityProfileSearchCriteria& AddOrConditions(SecurityProfileSearchCriteria&& value) { m_orConditionsHasBeenSet = true; m_orConditions.push_back(std::move(value)); return *this; } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline const Aws::Vector& GetAndConditions() const{ return m_andConditions; } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline bool AndConditionsHasBeenSet() const { return m_andConditionsHasBeenSet; } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline void SetAndConditions(const Aws::Vector& value) { m_andConditionsHasBeenSet = true; m_andConditions = value; } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline void SetAndConditions(Aws::Vector&& value) { m_andConditionsHasBeenSet = true; m_andConditions = std::move(value); } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline SecurityProfileSearchCriteria& WithAndConditions(const Aws::Vector& value) { SetAndConditions(value); return *this;} /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline SecurityProfileSearchCriteria& WithAndConditions(Aws::Vector&& value) { SetAndConditions(std::move(value)); return *this;} /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline SecurityProfileSearchCriteria& AddAndConditions(const SecurityProfileSearchCriteria& value) { m_andConditionsHasBeenSet = true; m_andConditions.push_back(value); return *this; } /** *

A list of conditions which would be applied together with an AND * condition.

*/ inline SecurityProfileSearchCriteria& AddAndConditions(SecurityProfileSearchCriteria&& value) { m_andConditionsHasBeenSet = true; m_andConditions.push_back(std::move(value)); return *this; } inline const StringCondition& GetStringCondition() const{ return m_stringCondition; } inline bool StringConditionHasBeenSet() const { return m_stringConditionHasBeenSet; } inline void SetStringCondition(const StringCondition& value) { m_stringConditionHasBeenSet = true; m_stringCondition = value; } inline void SetStringCondition(StringCondition&& value) { m_stringConditionHasBeenSet = true; m_stringCondition = std::move(value); } inline SecurityProfileSearchCriteria& WithStringCondition(const StringCondition& value) { SetStringCondition(value); return *this;} inline SecurityProfileSearchCriteria& WithStringCondition(StringCondition&& value) { SetStringCondition(std::move(value)); return *this;} private: Aws::Vector m_orConditions; bool m_orConditionsHasBeenSet = false; Aws::Vector m_andConditions; bool m_andConditionsHasBeenSet = false; StringCondition m_stringCondition; bool m_stringConditionHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws