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

This structure displays the results of one feature evaluation assignment to * one user session.

See Also:

AWS * API Reference

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

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline const Aws::String& GetDetails() const{ return m_details; } /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline bool DetailsHasBeenSet() const { return m_detailsHasBeenSet; } /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline void SetDetails(const Aws::String& value) { m_detailsHasBeenSet = true; m_details = value; } /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline void SetDetails(Aws::String&& value) { m_detailsHasBeenSet = true; m_details = std::move(value); } /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline void SetDetails(const char* value) { m_detailsHasBeenSet = true; m_details.assign(value); } /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline EvaluationResult& WithDetails(const Aws::String& value) { SetDetails(value); return *this;} /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline EvaluationResult& WithDetails(Aws::String&& value) { SetDetails(std::move(value)); return *this;} /** *

If this user was assigned to a launch or experiment, this field lists the * launch or experiment name.

*/ inline EvaluationResult& WithDetails(const char* value) { SetDetails(value); return *this;} /** *

An internal ID that represents a unique user session of the application.

*/ inline const Aws::String& GetEntityId() const{ return m_entityId; } /** *

An internal ID that represents a unique user session of the application.

*/ inline bool EntityIdHasBeenSet() const { return m_entityIdHasBeenSet; } /** *

An internal ID that represents a unique user session of the application.

*/ inline void SetEntityId(const Aws::String& value) { m_entityIdHasBeenSet = true; m_entityId = value; } /** *

An internal ID that represents a unique user session of the application.

*/ inline void SetEntityId(Aws::String&& value) { m_entityIdHasBeenSet = true; m_entityId = std::move(value); } /** *

An internal ID that represents a unique user session of the application.

*/ inline void SetEntityId(const char* value) { m_entityIdHasBeenSet = true; m_entityId.assign(value); } /** *

An internal ID that represents a unique user session of the application.

*/ inline EvaluationResult& WithEntityId(const Aws::String& value) { SetEntityId(value); return *this;} /** *

An internal ID that represents a unique user session of the application.

*/ inline EvaluationResult& WithEntityId(Aws::String&& value) { SetEntityId(std::move(value)); return *this;} /** *

An internal ID that represents a unique user session of the application.

*/ inline EvaluationResult& WithEntityId(const char* value) { SetEntityId(value); return *this;} /** *

The name of the feature being evaluated.

*/ inline const Aws::String& GetFeature() const{ return m_feature; } /** *

The name of the feature being evaluated.

*/ inline bool FeatureHasBeenSet() const { return m_featureHasBeenSet; } /** *

The name of the feature being evaluated.

*/ inline void SetFeature(const Aws::String& value) { m_featureHasBeenSet = true; m_feature = value; } /** *

The name of the feature being evaluated.

*/ inline void SetFeature(Aws::String&& value) { m_featureHasBeenSet = true; m_feature = std::move(value); } /** *

The name of the feature being evaluated.

*/ inline void SetFeature(const char* value) { m_featureHasBeenSet = true; m_feature.assign(value); } /** *

The name of the feature being evaluated.

*/ inline EvaluationResult& WithFeature(const Aws::String& value) { SetFeature(value); return *this;} /** *

The name of the feature being evaluated.

*/ inline EvaluationResult& WithFeature(Aws::String&& value) { SetFeature(std::move(value)); return *this;} /** *

The name of the feature being evaluated.

*/ inline EvaluationResult& WithFeature(const char* value) { SetFeature(value); return *this;} /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline const Aws::String& GetProject() const{ return m_project; } /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline bool ProjectHasBeenSet() const { return m_projectHasBeenSet; } /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline void SetProject(const Aws::String& value) { m_projectHasBeenSet = true; m_project = value; } /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline void SetProject(Aws::String&& value) { m_projectHasBeenSet = true; m_project = std::move(value); } /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline void SetProject(const char* value) { m_projectHasBeenSet = true; m_project.assign(value); } /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline EvaluationResult& WithProject(const Aws::String& value) { SetProject(value); return *this;} /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline EvaluationResult& WithProject(Aws::String&& value) { SetProject(std::move(value)); return *this;} /** *

The name or ARN of the project that contains the feature being evaluated.

*/ inline EvaluationResult& WithProject(const char* value) { SetProject(value); return *this;} /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline const Aws::String& GetReason() const{ return m_reason; } /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; } /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline void SetReason(const Aws::String& value) { m_reasonHasBeenSet = true; m_reason = value; } /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline void SetReason(Aws::String&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); } /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline void SetReason(const char* value) { m_reasonHasBeenSet = true; m_reason.assign(value); } /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline EvaluationResult& WithReason(const Aws::String& value) { SetReason(value); return *this;} /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline EvaluationResult& WithReason(Aws::String&& value) { SetReason(std::move(value)); return *this;} /** *

Specifies the reason that the user session was assigned this variation. * Possible values include DEFAULT, meaning the user was served the * default variation; LAUNCH_RULE_MATCH, if the user session was * enrolled in a launch; or EXPERIMENT_RULE_MATCH, if the user session * was enrolled in an experiment.

*/ inline EvaluationResult& WithReason(const char* value) { SetReason(value); return *this;} /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline const VariableValue& GetValue() const{ return m_value; } /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline void SetValue(const VariableValue& value) { m_valueHasBeenSet = true; m_value = value; } /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline void SetValue(VariableValue&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline EvaluationResult& WithValue(const VariableValue& value) { SetValue(value); return *this;} /** *

The value assigned to this variation to differentiate it from the other * variations of this feature.

*/ inline EvaluationResult& WithValue(VariableValue&& value) { SetValue(std::move(value)); return *this;} /** *

The name of the variation that was served to the user session.

*/ inline const Aws::String& GetVariation() const{ return m_variation; } /** *

The name of the variation that was served to the user session.

*/ inline bool VariationHasBeenSet() const { return m_variationHasBeenSet; } /** *

The name of the variation that was served to the user session.

*/ inline void SetVariation(const Aws::String& value) { m_variationHasBeenSet = true; m_variation = value; } /** *

The name of the variation that was served to the user session.

*/ inline void SetVariation(Aws::String&& value) { m_variationHasBeenSet = true; m_variation = std::move(value); } /** *

The name of the variation that was served to the user session.

*/ inline void SetVariation(const char* value) { m_variationHasBeenSet = true; m_variation.assign(value); } /** *

The name of the variation that was served to the user session.

*/ inline EvaluationResult& WithVariation(const Aws::String& value) { SetVariation(value); return *this;} /** *

The name of the variation that was served to the user session.

*/ inline EvaluationResult& WithVariation(Aws::String&& value) { SetVariation(std::move(value)); return *this;} /** *

The name of the variation that was served to the user session.

*/ inline EvaluationResult& WithVariation(const char* value) { SetVariation(value); return *this;} private: Aws::String m_details; bool m_detailsHasBeenSet = false; Aws::String m_entityId; bool m_entityIdHasBeenSet = false; Aws::String m_feature; bool m_featureHasBeenSet = false; Aws::String m_project; bool m_projectHasBeenSet = false; Aws::String m_reason; bool m_reasonHasBeenSet = false; VariableValue m_value; bool m_valueHasBeenSet = false; Aws::String m_variation; bool m_variationHasBeenSet = false; }; } // namespace Model } // namespace CloudWatchEvidently } // namespace Aws