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

Details about the managed agent status for the container.

See * Also:

AWS * API Reference

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

The Unix timestamp for the time when the managed agent was last started.

*/ inline const Aws::Utils::DateTime& GetLastStartedAt() const{ return m_lastStartedAt; } /** *

The Unix timestamp for the time when the managed agent was last started.

*/ inline bool LastStartedAtHasBeenSet() const { return m_lastStartedAtHasBeenSet; } /** *

The Unix timestamp for the time when the managed agent was last started.

*/ inline void SetLastStartedAt(const Aws::Utils::DateTime& value) { m_lastStartedAtHasBeenSet = true; m_lastStartedAt = value; } /** *

The Unix timestamp for the time when the managed agent was last started.

*/ inline void SetLastStartedAt(Aws::Utils::DateTime&& value) { m_lastStartedAtHasBeenSet = true; m_lastStartedAt = std::move(value); } /** *

The Unix timestamp for the time when the managed agent was last started.

*/ inline ManagedAgent& WithLastStartedAt(const Aws::Utils::DateTime& value) { SetLastStartedAt(value); return *this;} /** *

The Unix timestamp for the time when the managed agent was last started.

*/ inline ManagedAgent& WithLastStartedAt(Aws::Utils::DateTime&& value) { SetLastStartedAt(std::move(value)); return *this;} /** *

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

*/ inline const ManagedAgentName& GetName() const{ return m_name; } /** *

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

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

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

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

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

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

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

*/ inline ManagedAgent& WithName(const ManagedAgentName& value) { SetName(value); return *this;} /** *

The name of the managed agent. When the execute command feature is turned on, * the managed agent name is ExecuteCommandAgent.

*/ inline ManagedAgent& WithName(ManagedAgentName&& value) { SetName(std::move(value)); return *this;} /** *

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The reason for why the managed agent is in the state it is in.

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

The last known status of the managed agent.

*/ inline const Aws::String& GetLastStatus() const{ return m_lastStatus; } /** *

The last known status of the managed agent.

*/ inline bool LastStatusHasBeenSet() const { return m_lastStatusHasBeenSet; } /** *

The last known status of the managed agent.

*/ inline void SetLastStatus(const Aws::String& value) { m_lastStatusHasBeenSet = true; m_lastStatus = value; } /** *

The last known status of the managed agent.

*/ inline void SetLastStatus(Aws::String&& value) { m_lastStatusHasBeenSet = true; m_lastStatus = std::move(value); } /** *

The last known status of the managed agent.

*/ inline void SetLastStatus(const char* value) { m_lastStatusHasBeenSet = true; m_lastStatus.assign(value); } /** *

The last known status of the managed agent.

*/ inline ManagedAgent& WithLastStatus(const Aws::String& value) { SetLastStatus(value); return *this;} /** *

The last known status of the managed agent.

*/ inline ManagedAgent& WithLastStatus(Aws::String&& value) { SetLastStatus(std::move(value)); return *this;} /** *

The last known status of the managed agent.

*/ inline ManagedAgent& WithLastStatus(const char* value) { SetLastStatus(value); return *this;} private: Aws::Utils::DateTime m_lastStartedAt; bool m_lastStartedAtHasBeenSet = false; ManagedAgentName m_name; bool m_nameHasBeenSet = false; Aws::String m_reason; bool m_reasonHasBeenSet = false; Aws::String m_lastStatus; bool m_lastStatusHasBeenSet = false; }; } // namespace Model } // namespace ECS } // namespace Aws