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

An activity that computes an arithmetic expression using the message's * attributes.

See Also:

AWS * API Reference

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

The name of the math activity.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the math activity.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the math activity.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the math activity.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the math activity.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the math activity.

*/ inline MathActivity& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the math activity.

*/ inline MathActivity& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the math activity.

*/ inline MathActivity& WithName(const char* value) { SetName(value); return *this;} /** *

The name of the attribute that contains the result of the math operation.

*/ inline const Aws::String& GetAttribute() const{ return m_attribute; } /** *

The name of the attribute that contains the result of the math operation.

*/ inline bool AttributeHasBeenSet() const { return m_attributeHasBeenSet; } /** *

The name of the attribute that contains the result of the math operation.

*/ inline void SetAttribute(const Aws::String& value) { m_attributeHasBeenSet = true; m_attribute = value; } /** *

The name of the attribute that contains the result of the math operation.

*/ inline void SetAttribute(Aws::String&& value) { m_attributeHasBeenSet = true; m_attribute = std::move(value); } /** *

The name of the attribute that contains the result of the math operation.

*/ inline void SetAttribute(const char* value) { m_attributeHasBeenSet = true; m_attribute.assign(value); } /** *

The name of the attribute that contains the result of the math operation.

*/ inline MathActivity& WithAttribute(const Aws::String& value) { SetAttribute(value); return *this;} /** *

The name of the attribute that contains the result of the math operation.

*/ inline MathActivity& WithAttribute(Aws::String&& value) { SetAttribute(std::move(value)); return *this;} /** *

The name of the attribute that contains the result of the math operation.

*/ inline MathActivity& WithAttribute(const char* value) { SetAttribute(value); return *this;} /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline const Aws::String& GetMath() const{ return m_math; } /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline bool MathHasBeenSet() const { return m_mathHasBeenSet; } /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline void SetMath(const Aws::String& value) { m_mathHasBeenSet = true; m_math = value; } /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline void SetMath(Aws::String&& value) { m_mathHasBeenSet = true; m_math = std::move(value); } /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline void SetMath(const char* value) { m_mathHasBeenSet = true; m_math.assign(value); } /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline MathActivity& WithMath(const Aws::String& value) { SetMath(value); return *this;} /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline MathActivity& WithMath(Aws::String&& value) { SetMath(std::move(value)); return *this;} /** *

An expression that uses one or more existing attributes and must return an * integer value.

*/ inline MathActivity& WithMath(const char* value) { SetMath(value); return *this;} /** *

The next activity in the pipeline.

*/ inline const Aws::String& GetNext() const{ return m_next; } /** *

The next activity in the pipeline.

*/ inline bool NextHasBeenSet() const { return m_nextHasBeenSet; } /** *

The next activity in the pipeline.

*/ inline void SetNext(const Aws::String& value) { m_nextHasBeenSet = true; m_next = value; } /** *

The next activity in the pipeline.

*/ inline void SetNext(Aws::String&& value) { m_nextHasBeenSet = true; m_next = std::move(value); } /** *

The next activity in the pipeline.

*/ inline void SetNext(const char* value) { m_nextHasBeenSet = true; m_next.assign(value); } /** *

The next activity in the pipeline.

*/ inline MathActivity& WithNext(const Aws::String& value) { SetNext(value); return *this;} /** *

The next activity in the pipeline.

*/ inline MathActivity& WithNext(Aws::String&& value) { SetNext(std::move(value)); return *this;} /** *

The next activity in the pipeline.

*/ inline MathActivity& WithNext(const char* value) { SetNext(value); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_attribute; bool m_attributeHasBeenSet = false; Aws::String m_math; bool m_mathHasBeenSet = false; Aws::String m_next; bool m_nextHasBeenSet = false; }; } // namespace Model } // namespace IoTAnalytics } // namespace Aws