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

The details of the rule used for evaluating variable values.

See * Also:

AWS * API Reference

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

The rule ID.

*/ inline const Aws::String& GetRuleId() const{ return m_ruleId; } /** *

The rule ID.

*/ inline bool RuleIdHasBeenSet() const { return m_ruleIdHasBeenSet; } /** *

The rule ID.

*/ inline void SetRuleId(const Aws::String& value) { m_ruleIdHasBeenSet = true; m_ruleId = value; } /** *

The rule ID.

*/ inline void SetRuleId(Aws::String&& value) { m_ruleIdHasBeenSet = true; m_ruleId = std::move(value); } /** *

The rule ID.

*/ inline void SetRuleId(const char* value) { m_ruleIdHasBeenSet = true; m_ruleId.assign(value); } /** *

The rule ID.

*/ inline EvaluatedRule& WithRuleId(const Aws::String& value) { SetRuleId(value); return *this;} /** *

The rule ID.

*/ inline EvaluatedRule& WithRuleId(Aws::String&& value) { SetRuleId(std::move(value)); return *this;} /** *

The rule ID.

*/ inline EvaluatedRule& WithRuleId(const char* value) { SetRuleId(value); return *this;} /** *

The rule version.

*/ inline const Aws::String& GetRuleVersion() const{ return m_ruleVersion; } /** *

The rule version.

*/ inline bool RuleVersionHasBeenSet() const { return m_ruleVersionHasBeenSet; } /** *

The rule version.

*/ inline void SetRuleVersion(const Aws::String& value) { m_ruleVersionHasBeenSet = true; m_ruleVersion = value; } /** *

The rule version.

*/ inline void SetRuleVersion(Aws::String&& value) { m_ruleVersionHasBeenSet = true; m_ruleVersion = std::move(value); } /** *

The rule version.

*/ inline void SetRuleVersion(const char* value) { m_ruleVersionHasBeenSet = true; m_ruleVersion.assign(value); } /** *

The rule version.

*/ inline EvaluatedRule& WithRuleVersion(const Aws::String& value) { SetRuleVersion(value); return *this;} /** *

The rule version.

*/ inline EvaluatedRule& WithRuleVersion(Aws::String&& value) { SetRuleVersion(std::move(value)); return *this;} /** *

The rule version.

*/ inline EvaluatedRule& WithRuleVersion(const char* value) { SetRuleVersion(value); return *this;} /** *

The rule expression.

*/ inline const Aws::String& GetExpression() const{ return m_expression; } /** *

The rule expression.

*/ inline bool ExpressionHasBeenSet() const { return m_expressionHasBeenSet; } /** *

The rule expression.

*/ inline void SetExpression(const Aws::String& value) { m_expressionHasBeenSet = true; m_expression = value; } /** *

The rule expression.

*/ inline void SetExpression(Aws::String&& value) { m_expressionHasBeenSet = true; m_expression = std::move(value); } /** *

The rule expression.

*/ inline void SetExpression(const char* value) { m_expressionHasBeenSet = true; m_expression.assign(value); } /** *

The rule expression.

*/ inline EvaluatedRule& WithExpression(const Aws::String& value) { SetExpression(value); return *this;} /** *

The rule expression.

*/ inline EvaluatedRule& WithExpression(Aws::String&& value) { SetExpression(std::move(value)); return *this;} /** *

The rule expression.

*/ inline EvaluatedRule& WithExpression(const char* value) { SetExpression(value); return *this;} /** *

The rule expression value.

*/ inline const Aws::String& GetExpressionWithValues() const{ return m_expressionWithValues; } /** *

The rule expression value.

*/ inline bool ExpressionWithValuesHasBeenSet() const { return m_expressionWithValuesHasBeenSet; } /** *

The rule expression value.

*/ inline void SetExpressionWithValues(const Aws::String& value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues = value; } /** *

The rule expression value.

*/ inline void SetExpressionWithValues(Aws::String&& value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues = std::move(value); } /** *

The rule expression value.

*/ inline void SetExpressionWithValues(const char* value) { m_expressionWithValuesHasBeenSet = true; m_expressionWithValues.assign(value); } /** *

The rule expression value.

*/ inline EvaluatedRule& WithExpressionWithValues(const Aws::String& value) { SetExpressionWithValues(value); return *this;} /** *

The rule expression value.

*/ inline EvaluatedRule& WithExpressionWithValues(Aws::String&& value) { SetExpressionWithValues(std::move(value)); return *this;} /** *

The rule expression value.

*/ inline EvaluatedRule& WithExpressionWithValues(const char* value) { SetExpressionWithValues(value); return *this;} /** *

The rule outcome.

*/ inline const Aws::Vector& GetOutcomes() const{ return m_outcomes; } /** *

The rule outcome.

*/ inline bool OutcomesHasBeenSet() const { return m_outcomesHasBeenSet; } /** *

The rule outcome.

*/ inline void SetOutcomes(const Aws::Vector& value) { m_outcomesHasBeenSet = true; m_outcomes = value; } /** *

The rule outcome.

*/ inline void SetOutcomes(Aws::Vector&& value) { m_outcomesHasBeenSet = true; m_outcomes = std::move(value); } /** *

The rule outcome.

*/ inline EvaluatedRule& WithOutcomes(const Aws::Vector& value) { SetOutcomes(value); return *this;} /** *

The rule outcome.

*/ inline EvaluatedRule& WithOutcomes(Aws::Vector&& value) { SetOutcomes(std::move(value)); return *this;} /** *

The rule outcome.

*/ inline EvaluatedRule& AddOutcomes(const Aws::String& value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(value); return *this; } /** *

The rule outcome.

*/ inline EvaluatedRule& AddOutcomes(Aws::String&& value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(std::move(value)); return *this; } /** *

The rule outcome.

*/ inline EvaluatedRule& AddOutcomes(const char* value) { m_outcomesHasBeenSet = true; m_outcomes.push_back(value); return *this; } /** *

Indicates whether the rule was evaluated.

*/ inline bool GetEvaluated() const{ return m_evaluated; } /** *

Indicates whether the rule was evaluated.

*/ inline bool EvaluatedHasBeenSet() const { return m_evaluatedHasBeenSet; } /** *

Indicates whether the rule was evaluated.

*/ inline void SetEvaluated(bool value) { m_evaluatedHasBeenSet = true; m_evaluated = value; } /** *

Indicates whether the rule was evaluated.

*/ inline EvaluatedRule& WithEvaluated(bool value) { SetEvaluated(value); return *this;} /** *

Indicates whether the rule matched.

*/ inline bool GetMatched() const{ return m_matched; } /** *

Indicates whether the rule matched.

*/ inline bool MatchedHasBeenSet() const { return m_matchedHasBeenSet; } /** *

Indicates whether the rule matched.

*/ inline void SetMatched(bool value) { m_matchedHasBeenSet = true; m_matched = value; } /** *

Indicates whether the rule matched.

*/ inline EvaluatedRule& WithMatched(bool value) { SetMatched(value); return *this;} private: Aws::String m_ruleId; bool m_ruleIdHasBeenSet = false; Aws::String m_ruleVersion; bool m_ruleVersionHasBeenSet = false; Aws::String m_expression; bool m_expressionHasBeenSet = false; Aws::String m_expressionWithValues; bool m_expressionWithValuesHasBeenSet = false; Aws::Vector m_outcomes; bool m_outcomesHasBeenSet = false; bool m_evaluated; bool m_evaluatedHasBeenSet = false; bool m_matched; bool m_matchedHasBeenSet = false; }; } // namespace Model } // namespace FraudDetector } // namespace Aws