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

Information about parameter usage.

See Also:

AWS * API Reference

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

The name of the parameter.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the parameter.

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

The name of the parameter.

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

The name of the parameter.

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

The name of the parameter.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the parameter.

*/ inline ParameterHistory& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the parameter.

*/ inline ParameterHistory& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the parameter.

*/ inline ParameterHistory& WithName(const char* value) { SetName(value); return *this;} /** *

The type of parameter used.

*/ inline const ParameterType& GetType() const{ return m_type; } /** *

The type of parameter used.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of parameter used.

*/ inline void SetType(const ParameterType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of parameter used.

*/ inline void SetType(ParameterType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of parameter used.

*/ inline ParameterHistory& WithType(const ParameterType& value) { SetType(value); return *this;} /** *

The type of parameter used.

*/ inline ParameterHistory& WithType(ParameterType&& value) { SetType(std::move(value)); return *this;} /** *

The ID of the query key used for this parameter.

*/ inline const Aws::String& GetKeyId() const{ return m_keyId; } /** *

The ID of the query key used for this parameter.

*/ inline bool KeyIdHasBeenSet() const { return m_keyIdHasBeenSet; } /** *

The ID of the query key used for this parameter.

*/ inline void SetKeyId(const Aws::String& value) { m_keyIdHasBeenSet = true; m_keyId = value; } /** *

The ID of the query key used for this parameter.

*/ inline void SetKeyId(Aws::String&& value) { m_keyIdHasBeenSet = true; m_keyId = std::move(value); } /** *

The ID of the query key used for this parameter.

*/ inline void SetKeyId(const char* value) { m_keyIdHasBeenSet = true; m_keyId.assign(value); } /** *

The ID of the query key used for this parameter.

*/ inline ParameterHistory& WithKeyId(const Aws::String& value) { SetKeyId(value); return *this;} /** *

The ID of the query key used for this parameter.

*/ inline ParameterHistory& WithKeyId(Aws::String&& value) { SetKeyId(std::move(value)); return *this;} /** *

The ID of the query key used for this parameter.

*/ inline ParameterHistory& WithKeyId(const char* value) { SetKeyId(value); return *this;} /** *

Date the parameter was last changed or updated.

*/ inline const Aws::Utils::DateTime& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *

Date the parameter was last changed or updated.

*/ inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } /** *

Date the parameter was last changed or updated.

*/ inline void SetLastModifiedDate(const Aws::Utils::DateTime& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } /** *

Date the parameter was last changed or updated.

*/ inline void SetLastModifiedDate(Aws::Utils::DateTime&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } /** *

Date the parameter was last changed or updated.

*/ inline ParameterHistory& WithLastModifiedDate(const Aws::Utils::DateTime& value) { SetLastModifiedDate(value); return *this;} /** *

Date the parameter was last changed or updated.

*/ inline ParameterHistory& WithLastModifiedDate(Aws::Utils::DateTime&& value) { SetLastModifiedDate(std::move(value)); return *this;} /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline const Aws::String& GetLastModifiedUser() const{ return m_lastModifiedUser; } /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline bool LastModifiedUserHasBeenSet() const { return m_lastModifiedUserHasBeenSet; } /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline void SetLastModifiedUser(const Aws::String& value) { m_lastModifiedUserHasBeenSet = true; m_lastModifiedUser = value; } /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline void SetLastModifiedUser(Aws::String&& value) { m_lastModifiedUserHasBeenSet = true; m_lastModifiedUser = std::move(value); } /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline void SetLastModifiedUser(const char* value) { m_lastModifiedUserHasBeenSet = true; m_lastModifiedUser.assign(value); } /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline ParameterHistory& WithLastModifiedUser(const Aws::String& value) { SetLastModifiedUser(value); return *this;} /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline ParameterHistory& WithLastModifiedUser(Aws::String&& value) { SetLastModifiedUser(std::move(value)); return *this;} /** *

Amazon Resource Name (ARN) of the Amazon Web Services user who last changed * the parameter.

*/ inline ParameterHistory& WithLastModifiedUser(const char* value) { SetLastModifiedUser(value); return *this;} /** *

Information about the parameter.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

Information about the parameter.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

Information about the parameter.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

Information about the parameter.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

Information about the parameter.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

Information about the parameter.

*/ inline ParameterHistory& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

Information about the parameter.

*/ inline ParameterHistory& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

Information about the parameter.

*/ inline ParameterHistory& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The parameter value.

*/ inline const Aws::String& GetValue() const{ return m_value; } /** *

The parameter value.

*/ inline bool ValueHasBeenSet() const { return m_valueHasBeenSet; } /** *

The parameter value.

*/ inline void SetValue(const Aws::String& value) { m_valueHasBeenSet = true; m_value = value; } /** *

The parameter value.

*/ inline void SetValue(Aws::String&& value) { m_valueHasBeenSet = true; m_value = std::move(value); } /** *

The parameter value.

*/ inline void SetValue(const char* value) { m_valueHasBeenSet = true; m_value.assign(value); } /** *

The parameter value.

*/ inline ParameterHistory& WithValue(const Aws::String& value) { SetValue(value); return *this;} /** *

The parameter value.

*/ inline ParameterHistory& WithValue(Aws::String&& value) { SetValue(std::move(value)); return *this;} /** *

The parameter value.

*/ inline ParameterHistory& WithValue(const char* value) { SetValue(value); return *this;} /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline const Aws::String& GetAllowedPattern() const{ return m_allowedPattern; } /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline bool AllowedPatternHasBeenSet() const { return m_allowedPatternHasBeenSet; } /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline void SetAllowedPattern(const Aws::String& value) { m_allowedPatternHasBeenSet = true; m_allowedPattern = value; } /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline void SetAllowedPattern(Aws::String&& value) { m_allowedPatternHasBeenSet = true; m_allowedPattern = std::move(value); } /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline void SetAllowedPattern(const char* value) { m_allowedPatternHasBeenSet = true; m_allowedPattern.assign(value); } /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline ParameterHistory& WithAllowedPattern(const Aws::String& value) { SetAllowedPattern(value); return *this;} /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline ParameterHistory& WithAllowedPattern(Aws::String&& value) { SetAllowedPattern(std::move(value)); return *this;} /** *

Parameter names can include the following letters and symbols.

*

a-zA-Z0-9_.-

*/ inline ParameterHistory& WithAllowedPattern(const char* value) { SetAllowedPattern(value); return *this;} /** *

The parameter version.

*/ inline long long GetVersion() const{ return m_version; } /** *

The parameter version.

*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *

The parameter version.

*/ inline void SetVersion(long long value) { m_versionHasBeenSet = true; m_version = value; } /** *

The parameter version.

*/ inline ParameterHistory& WithVersion(long long value) { SetVersion(value); return *this;} /** *

Labels assigned to the parameter version.

*/ inline const Aws::Vector& GetLabels() const{ return m_labels; } /** *

Labels assigned to the parameter version.

*/ inline bool LabelsHasBeenSet() const { return m_labelsHasBeenSet; } /** *

Labels assigned to the parameter version.

*/ inline void SetLabels(const Aws::Vector& value) { m_labelsHasBeenSet = true; m_labels = value; } /** *

Labels assigned to the parameter version.

*/ inline void SetLabels(Aws::Vector&& value) { m_labelsHasBeenSet = true; m_labels = std::move(value); } /** *

Labels assigned to the parameter version.

*/ inline ParameterHistory& WithLabels(const Aws::Vector& value) { SetLabels(value); return *this;} /** *

Labels assigned to the parameter version.

*/ inline ParameterHistory& WithLabels(Aws::Vector&& value) { SetLabels(std::move(value)); return *this;} /** *

Labels assigned to the parameter version.

*/ inline ParameterHistory& AddLabels(const Aws::String& value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; } /** *

Labels assigned to the parameter version.

*/ inline ParameterHistory& AddLabels(Aws::String&& value) { m_labelsHasBeenSet = true; m_labels.push_back(std::move(value)); return *this; } /** *

Labels assigned to the parameter version.

*/ inline ParameterHistory& AddLabels(const char* value) { m_labelsHasBeenSet = true; m_labels.push_back(value); return *this; } /** *

The parameter tier.

*/ inline const ParameterTier& GetTier() const{ return m_tier; } /** *

The parameter tier.

*/ inline bool TierHasBeenSet() const { return m_tierHasBeenSet; } /** *

The parameter tier.

*/ inline void SetTier(const ParameterTier& value) { m_tierHasBeenSet = true; m_tier = value; } /** *

The parameter tier.

*/ inline void SetTier(ParameterTier&& value) { m_tierHasBeenSet = true; m_tier = std::move(value); } /** *

The parameter tier.

*/ inline ParameterHistory& WithTier(const ParameterTier& value) { SetTier(value); return *this;} /** *

The parameter tier.

*/ inline ParameterHistory& WithTier(ParameterTier&& value) { SetTier(std::move(value)); return *this;} /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline const Aws::Vector& GetPolicies() const{ return m_policies; } /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline bool PoliciesHasBeenSet() const { return m_policiesHasBeenSet; } /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline void SetPolicies(const Aws::Vector& value) { m_policiesHasBeenSet = true; m_policies = value; } /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline void SetPolicies(Aws::Vector&& value) { m_policiesHasBeenSet = true; m_policies = std::move(value); } /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline ParameterHistory& WithPolicies(const Aws::Vector& value) { SetPolicies(value); return *this;} /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline ParameterHistory& WithPolicies(Aws::Vector&& value) { SetPolicies(std::move(value)); return *this;} /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline ParameterHistory& AddPolicies(const ParameterInlinePolicy& value) { m_policiesHasBeenSet = true; m_policies.push_back(value); return *this; } /** *

Information about the policies assigned to a parameter.

Assigning * parameter policies in the Amazon Web Services Systems Manager User * Guide.

*/ inline ParameterHistory& AddPolicies(ParameterInlinePolicy&& value) { m_policiesHasBeenSet = true; m_policies.push_back(std::move(value)); return *this; } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline const Aws::String& GetDataType() const{ return m_dataType; } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline bool DataTypeHasBeenSet() const { return m_dataTypeHasBeenSet; } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline void SetDataType(const Aws::String& value) { m_dataTypeHasBeenSet = true; m_dataType = value; } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline void SetDataType(Aws::String&& value) { m_dataTypeHasBeenSet = true; m_dataType = std::move(value); } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline void SetDataType(const char* value) { m_dataTypeHasBeenSet = true; m_dataType.assign(value); } /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline ParameterHistory& WithDataType(const Aws::String& value) { SetDataType(value); return *this;} /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline ParameterHistory& WithDataType(Aws::String&& value) { SetDataType(std::move(value)); return *this;} /** *

The data type of the parameter, such as text or * aws:ec2:image. The default is text.

*/ inline ParameterHistory& WithDataType(const char* value) { SetDataType(value); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; ParameterType m_type; bool m_typeHasBeenSet = false; Aws::String m_keyId; bool m_keyIdHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; Aws::String m_lastModifiedUser; bool m_lastModifiedUserHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_value; bool m_valueHasBeenSet = false; Aws::String m_allowedPattern; bool m_allowedPatternHasBeenSet = false; long long m_version; bool m_versionHasBeenSet = false; Aws::Vector m_labels; bool m_labelsHasBeenSet = false; ParameterTier m_tier; bool m_tierHasBeenSet = false; Aws::Vector m_policies; bool m_policiesHasBeenSet = false; Aws::String m_dataType; bool m_dataTypeHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws