This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-sagemaker/include/aws/sagemaker/model/SearchExpression.h

253 lines
10 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/sagemaker/SageMaker_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/sagemaker/model/BooleanOperator.h>
#include <aws/sagemaker/model/Filter.h>
#include <aws/sagemaker/model/NestedFilters.h>
#include <aws/sagemaker/model/SearchExpression.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace SageMaker
{
namespace Model
{
/**
* <p>A multi-expression that searches for the specified resource or resources in a
* search. All resource objects that satisfy the expression's condition are
* included in the search results. You must specify at least one subexpression,
* filter, or nested filter. A <code>SearchExpression</code> can contain up to
* twenty elements.</p> <p>A <code>SearchExpression</code> contains the following
* components:</p> <ul> <li> <p>A list of <code>Filter</code> objects. Each filter
* defines a simple Boolean expression comprised of a resource property name,
* Boolean operator, and value.</p> </li> <li> <p>A list of
* <code>NestedFilter</code> objects. Each nested filter defines a list of Boolean
* expressions using a list of resource properties. A nested filter is satisfied if
* a single object in the list satisfies all Boolean expressions.</p> </li> <li>
* <p>A list of <code>SearchExpression</code> objects. A search expression object
* can be nested in a list of search expression objects.</p> </li> <li> <p>A
* Boolean operator: <code>And</code> or <code>Or</code>.</p> </li> </ul><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/SearchExpression">AWS
* API Reference</a></p>
*/
class AWS_SAGEMAKER_API SearchExpression
{
public:
SearchExpression();
SearchExpression(Aws::Utils::Json::JsonView jsonValue);
SearchExpression& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A list of filter objects.</p>
*/
inline const Aws::Vector<Filter>& GetFilters() const{ return m_filters; }
/**
* <p>A list of filter objects.</p>
*/
inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
/**
* <p>A list of filter objects.</p>
*/
inline void SetFilters(const Aws::Vector<Filter>& value) { m_filtersHasBeenSet = true; m_filters = value; }
/**
* <p>A list of filter objects.</p>
*/
inline void SetFilters(Aws::Vector<Filter>&& value) { m_filtersHasBeenSet = true; m_filters = std::move(value); }
/**
* <p>A list of filter objects.</p>
*/
inline SearchExpression& WithFilters(const Aws::Vector<Filter>& value) { SetFilters(value); return *this;}
/**
* <p>A list of filter objects.</p>
*/
inline SearchExpression& WithFilters(Aws::Vector<Filter>&& value) { SetFilters(std::move(value)); return *this;}
/**
* <p>A list of filter objects.</p>
*/
inline SearchExpression& AddFilters(const Filter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; }
/**
* <p>A list of filter objects.</p>
*/
inline SearchExpression& AddFilters(Filter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(std::move(value)); return *this; }
/**
* <p>A list of nested filter objects.</p>
*/
inline const Aws::Vector<NestedFilters>& GetNestedFilters() const{ return m_nestedFilters; }
/**
* <p>A list of nested filter objects.</p>
*/
inline bool NestedFiltersHasBeenSet() const { return m_nestedFiltersHasBeenSet; }
/**
* <p>A list of nested filter objects.</p>
*/
inline void SetNestedFilters(const Aws::Vector<NestedFilters>& value) { m_nestedFiltersHasBeenSet = true; m_nestedFilters = value; }
/**
* <p>A list of nested filter objects.</p>
*/
inline void SetNestedFilters(Aws::Vector<NestedFilters>&& value) { m_nestedFiltersHasBeenSet = true; m_nestedFilters = std::move(value); }
/**
* <p>A list of nested filter objects.</p>
*/
inline SearchExpression& WithNestedFilters(const Aws::Vector<NestedFilters>& value) { SetNestedFilters(value); return *this;}
/**
* <p>A list of nested filter objects.</p>
*/
inline SearchExpression& WithNestedFilters(Aws::Vector<NestedFilters>&& value) { SetNestedFilters(std::move(value)); return *this;}
/**
* <p>A list of nested filter objects.</p>
*/
inline SearchExpression& AddNestedFilters(const NestedFilters& value) { m_nestedFiltersHasBeenSet = true; m_nestedFilters.push_back(value); return *this; }
/**
* <p>A list of nested filter objects.</p>
*/
inline SearchExpression& AddNestedFilters(NestedFilters&& value) { m_nestedFiltersHasBeenSet = true; m_nestedFilters.push_back(std::move(value)); return *this; }
/**
* <p>A list of search expression objects.</p>
*/
inline const Aws::Vector<SearchExpression>& GetSubExpressions() const{ return m_subExpressions; }
/**
* <p>A list of search expression objects.</p>
*/
inline bool SubExpressionsHasBeenSet() const { return m_subExpressionsHasBeenSet; }
/**
* <p>A list of search expression objects.</p>
*/
inline void SetSubExpressions(const Aws::Vector<SearchExpression>& value) { m_subExpressionsHasBeenSet = true; m_subExpressions = value; }
/**
* <p>A list of search expression objects.</p>
*/
inline void SetSubExpressions(Aws::Vector<SearchExpression>&& value) { m_subExpressionsHasBeenSet = true; m_subExpressions = std::move(value); }
/**
* <p>A list of search expression objects.</p>
*/
inline SearchExpression& WithSubExpressions(const Aws::Vector<SearchExpression>& value) { SetSubExpressions(value); return *this;}
/**
* <p>A list of search expression objects.</p>
*/
inline SearchExpression& WithSubExpressions(Aws::Vector<SearchExpression>&& value) { SetSubExpressions(std::move(value)); return *this;}
/**
* <p>A list of search expression objects.</p>
*/
inline SearchExpression& AddSubExpressions(const SearchExpression& value) { m_subExpressionsHasBeenSet = true; m_subExpressions.push_back(value); return *this; }
/**
* <p>A list of search expression objects.</p>
*/
inline SearchExpression& AddSubExpressions(SearchExpression&& value) { m_subExpressionsHasBeenSet = true; m_subExpressions.push_back(std::move(value)); return *this; }
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline const BooleanOperator& GetOperator() const{ return m_operator; }
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline bool OperatorHasBeenSet() const { return m_operatorHasBeenSet; }
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline void SetOperator(const BooleanOperator& value) { m_operatorHasBeenSet = true; m_operator = value; }
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline void SetOperator(BooleanOperator&& value) { m_operatorHasBeenSet = true; m_operator = std::move(value); }
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline SearchExpression& WithOperator(const BooleanOperator& value) { SetOperator(value); return *this;}
/**
* <p>A Boolean operator used to evaluate the search expression. If you want every
* conditional statement in all lists to be satisfied for the entire search
* expression to be true, specify <code>And</code>. If only a single conditional
* statement needs to be true for the entire search expression to be true, specify
* <code>Or</code>. The default value is <code>And</code>.</p>
*/
inline SearchExpression& WithOperator(BooleanOperator&& value) { SetOperator(std::move(value)); return *this;}
private:
Aws::Vector<Filter> m_filters;
bool m_filtersHasBeenSet;
Aws::Vector<NestedFilters> m_nestedFilters;
bool m_nestedFiltersHasBeenSet;
Aws::Vector<SearchExpression> m_subExpressions;
bool m_subExpressionsHasBeenSet;
BooleanOperator m_operator;
bool m_operatorHasBeenSet;
};
} // namespace Model
} // namespace SageMaker
} // namespace Aws