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

The EffectivePatch structure defines metadata about a patch * along with the approval state of the patch in a particular patch baseline. The * approval state includes information about whether the patch is currently * approved, due to be approved by a rule, explicitly approved, or explicitly * rejected and the date the patch was or will be approved.

See * Also:

AWS * API Reference

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

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline const Patch& GetPatch() const{ return m_patch; } /** *

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline bool PatchHasBeenSet() const { return m_patchHasBeenSet; } /** *

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline void SetPatch(const Patch& value) { m_patchHasBeenSet = true; m_patch = value; } /** *

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline void SetPatch(Patch&& value) { m_patchHasBeenSet = true; m_patch = std::move(value); } /** *

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline EffectivePatch& WithPatch(const Patch& value) { SetPatch(value); return *this;} /** *

Provides metadata for a patch, including information such as the KB ID, * severity, classification and a URL for where more information can be obtained * about the patch.

*/ inline EffectivePatch& WithPatch(Patch&& value) { SetPatch(std::move(value)); return *this;} /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline const PatchStatus& GetPatchStatus() const{ return m_patchStatus; } /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline bool PatchStatusHasBeenSet() const { return m_patchStatusHasBeenSet; } /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline void SetPatchStatus(const PatchStatus& value) { m_patchStatusHasBeenSet = true; m_patchStatus = value; } /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline void SetPatchStatus(PatchStatus&& value) { m_patchStatusHasBeenSet = true; m_patchStatus = std::move(value); } /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline EffectivePatch& WithPatchStatus(const PatchStatus& value) { SetPatchStatus(value); return *this;} /** *

The status of the patch in a patch baseline. This includes information about * whether the patch is currently approved, due to be approved by a rule, * explicitly approved, or explicitly rejected and the date the patch was or will * be approved.

*/ inline EffectivePatch& WithPatchStatus(PatchStatus&& value) { SetPatchStatus(std::move(value)); return *this;} private: Patch m_patch; bool m_patchHasBeenSet = false; PatchStatus m_patchStatus; bool m_patchStatusHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws