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

Specifies the lifecycle event configuration

See Also:

AWS * API Reference

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

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline const ShutdownEventConfiguration& GetShutdown() const{ return m_shutdown; } /** *

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline bool ShutdownHasBeenSet() const { return m_shutdownHasBeenSet; } /** *

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline void SetShutdown(const ShutdownEventConfiguration& value) { m_shutdownHasBeenSet = true; m_shutdown = value; } /** *

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline void SetShutdown(ShutdownEventConfiguration&& value) { m_shutdownHasBeenSet = true; m_shutdown = std::move(value); } /** *

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline LifecycleEventConfiguration& WithShutdown(const ShutdownEventConfiguration& value) { SetShutdown(value); return *this;} /** *

A ShutdownEventConfiguration object that specifies the Shutdown * event configuration.

*/ inline LifecycleEventConfiguration& WithShutdown(ShutdownEventConfiguration&& value) { SetShutdown(std::move(value)); return *this;} private: ShutdownEventConfiguration m_shutdown; bool m_shutdownHasBeenSet = false; }; } // namespace Model } // namespace OpsWorks } // namespace Aws