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

Provides the details of the TimerStarted event.

See * Also:

AWS * API Reference

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

The unique ID of the timer that was started.

*/ inline const Aws::String& GetTimerId() const{ return m_timerId; } /** *

The unique ID of the timer that was started.

*/ inline bool TimerIdHasBeenSet() const { return m_timerIdHasBeenSet; } /** *

The unique ID of the timer that was started.

*/ inline void SetTimerId(const Aws::String& value) { m_timerIdHasBeenSet = true; m_timerId = value; } /** *

The unique ID of the timer that was started.

*/ inline void SetTimerId(Aws::String&& value) { m_timerIdHasBeenSet = true; m_timerId = std::move(value); } /** *

The unique ID of the timer that was started.

*/ inline void SetTimerId(const char* value) { m_timerIdHasBeenSet = true; m_timerId.assign(value); } /** *

The unique ID of the timer that was started.

*/ inline TimerStartedEventAttributes& WithTimerId(const Aws::String& value) { SetTimerId(value); return *this;} /** *

The unique ID of the timer that was started.

*/ inline TimerStartedEventAttributes& WithTimerId(Aws::String&& value) { SetTimerId(std::move(value)); return *this;} /** *

The unique ID of the timer that was started.

*/ inline TimerStartedEventAttributes& WithTimerId(const char* value) { SetTimerId(value); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline const Aws::String& GetControl() const{ return m_control; } /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline bool ControlHasBeenSet() const { return m_controlHasBeenSet; } /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline void SetControl(const Aws::String& value) { m_controlHasBeenSet = true; m_control = value; } /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline void SetControl(Aws::String&& value) { m_controlHasBeenSet = true; m_control = std::move(value); } /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline void SetControl(const char* value) { m_controlHasBeenSet = true; m_control.assign(value); } /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline TimerStartedEventAttributes& WithControl(const Aws::String& value) { SetControl(value); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline TimerStartedEventAttributes& WithControl(Aws::String&& value) { SetControl(std::move(value)); return *this;} /** *

Data attached to the event that can be used by the decider in subsequent * workflow tasks.

*/ inline TimerStartedEventAttributes& WithControl(const char* value) { SetControl(value); return *this;} /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline const Aws::String& GetStartToFireTimeout() const{ return m_startToFireTimeout; } /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline bool StartToFireTimeoutHasBeenSet() const { return m_startToFireTimeoutHasBeenSet; } /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline void SetStartToFireTimeout(const Aws::String& value) { m_startToFireTimeoutHasBeenSet = true; m_startToFireTimeout = value; } /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline void SetStartToFireTimeout(Aws::String&& value) { m_startToFireTimeoutHasBeenSet = true; m_startToFireTimeout = std::move(value); } /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline void SetStartToFireTimeout(const char* value) { m_startToFireTimeoutHasBeenSet = true; m_startToFireTimeout.assign(value); } /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline TimerStartedEventAttributes& WithStartToFireTimeout(const Aws::String& value) { SetStartToFireTimeout(value); return *this;} /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline TimerStartedEventAttributes& WithStartToFireTimeout(Aws::String&& value) { SetStartToFireTimeout(std::move(value)); return *this;} /** *

The duration of time after which the timer fires.

The duration is * specified in seconds, an integer greater than or equal to 0.

*/ inline TimerStartedEventAttributes& WithStartToFireTimeout(const char* value) { SetStartToFireTimeout(value); return *this;} /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartTimer decision for this * activity task. This information can be useful for diagnosing problems by tracing * back the chain of events leading up to this event.

*/ inline long long GetDecisionTaskCompletedEventId() const{ return m_decisionTaskCompletedEventId; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartTimer decision for this * activity task. This information can be useful for diagnosing problems by tracing * back the chain of events leading up to this event.

*/ inline bool DecisionTaskCompletedEventIdHasBeenSet() const { return m_decisionTaskCompletedEventIdHasBeenSet; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartTimer decision for this * activity task. This information can be useful for diagnosing problems by tracing * back the chain of events leading up to this event.

*/ inline void SetDecisionTaskCompletedEventId(long long value) { m_decisionTaskCompletedEventIdHasBeenSet = true; m_decisionTaskCompletedEventId = value; } /** *

The ID of the DecisionTaskCompleted event corresponding to the * decision task that resulted in the StartTimer decision for this * activity task. This information can be useful for diagnosing problems by tracing * back the chain of events leading up to this event.

*/ inline TimerStartedEventAttributes& WithDecisionTaskCompletedEventId(long long value) { SetDecisionTaskCompletedEventId(value); return *this;} private: Aws::String m_timerId; bool m_timerIdHasBeenSet = false; Aws::String m_control; bool m_controlHasBeenSet = false; Aws::String m_startToFireTimeout; bool m_startToFireTimeoutHasBeenSet = false; long long m_decisionTaskCompletedEventId; bool m_decisionTaskCompletedEventIdHasBeenSet = false; }; } // namespace Model } // namespace SWF } // namespace Aws