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

Contains manual snapshot limit information for a directory.

See * Also:

AWS * API Reference

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

The maximum number of manual snapshots allowed.

*/ inline int GetManualSnapshotsLimit() const{ return m_manualSnapshotsLimit; } /** *

The maximum number of manual snapshots allowed.

*/ inline bool ManualSnapshotsLimitHasBeenSet() const { return m_manualSnapshotsLimitHasBeenSet; } /** *

The maximum number of manual snapshots allowed.

*/ inline void SetManualSnapshotsLimit(int value) { m_manualSnapshotsLimitHasBeenSet = true; m_manualSnapshotsLimit = value; } /** *

The maximum number of manual snapshots allowed.

*/ inline SnapshotLimits& WithManualSnapshotsLimit(int value) { SetManualSnapshotsLimit(value); return *this;} /** *

The current number of manual snapshots of the directory.

*/ inline int GetManualSnapshotsCurrentCount() const{ return m_manualSnapshotsCurrentCount; } /** *

The current number of manual snapshots of the directory.

*/ inline bool ManualSnapshotsCurrentCountHasBeenSet() const { return m_manualSnapshotsCurrentCountHasBeenSet; } /** *

The current number of manual snapshots of the directory.

*/ inline void SetManualSnapshotsCurrentCount(int value) { m_manualSnapshotsCurrentCountHasBeenSet = true; m_manualSnapshotsCurrentCount = value; } /** *

The current number of manual snapshots of the directory.

*/ inline SnapshotLimits& WithManualSnapshotsCurrentCount(int value) { SetManualSnapshotsCurrentCount(value); return *this;} /** *

Indicates if the manual snapshot limit has been reached.

*/ inline bool GetManualSnapshotsLimitReached() const{ return m_manualSnapshotsLimitReached; } /** *

Indicates if the manual snapshot limit has been reached.

*/ inline bool ManualSnapshotsLimitReachedHasBeenSet() const { return m_manualSnapshotsLimitReachedHasBeenSet; } /** *

Indicates if the manual snapshot limit has been reached.

*/ inline void SetManualSnapshotsLimitReached(bool value) { m_manualSnapshotsLimitReachedHasBeenSet = true; m_manualSnapshotsLimitReached = value; } /** *

Indicates if the manual snapshot limit has been reached.

*/ inline SnapshotLimits& WithManualSnapshotsLimitReached(bool value) { SetManualSnapshotsLimitReached(value); return *this;} private: int m_manualSnapshotsLimit; bool m_manualSnapshotsLimitHasBeenSet = false; int m_manualSnapshotsCurrentCount; bool m_manualSnapshotsCurrentCountHasBeenSet = false; bool m_manualSnapshotsLimitReached; bool m_manualSnapshotsLimitReachedHasBeenSet = false; }; } // namespace Model } // namespace DirectoryService } // namespace Aws