/** * 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 #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SSM { namespace Model { class GetDocumentResult { public: AWS_SSM_API GetDocumentResult(); AWS_SSM_API GetDocumentResult(const Aws::AmazonWebServiceResult& result); AWS_SSM_API GetDocumentResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The name of the SSM document.

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

The name of the SSM document.

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

The name of the SSM document.

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

The name of the SSM document.

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

The name of the SSM document.

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

The name of the SSM document.

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

The name of the SSM document.

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

The date the SSM document was created.

*/ inline const Aws::Utils::DateTime& GetCreatedDate() const{ return m_createdDate; } /** *

The date the SSM document was created.

*/ inline void SetCreatedDate(const Aws::Utils::DateTime& value) { m_createdDate = value; } /** *

The date the SSM document was created.

*/ inline void SetCreatedDate(Aws::Utils::DateTime&& value) { m_createdDate = std::move(value); } /** *

The date the SSM document was created.

*/ inline GetDocumentResult& WithCreatedDate(const Aws::Utils::DateTime& value) { SetCreatedDate(value); return *this;} /** *

The date the SSM document was created.

*/ inline GetDocumentResult& WithCreatedDate(Aws::Utils::DateTime&& value) { SetCreatedDate(std::move(value)); return *this;} /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline const Aws::String& GetDisplayName() const{ return m_displayName; } /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline void SetDisplayName(const Aws::String& value) { m_displayName = value; } /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline void SetDisplayName(Aws::String&& value) { m_displayName = std::move(value); } /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline void SetDisplayName(const char* value) { m_displayName.assign(value); } /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline GetDocumentResult& WithDisplayName(const Aws::String& value) { SetDisplayName(value); return *this;} /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline GetDocumentResult& WithDisplayName(Aws::String&& value) { SetDisplayName(std::move(value)); return *this;} /** *

The friendly name of the SSM document. This value can differ for each version * of the document. If you want to update this value, see * UpdateDocument.

*/ inline GetDocumentResult& WithDisplayName(const char* value) { SetDisplayName(value); return *this;} /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline const Aws::String& GetVersionName() const{ return m_versionName; } /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline void SetVersionName(const Aws::String& value) { m_versionName = value; } /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline void SetVersionName(Aws::String&& value) { m_versionName = std::move(value); } /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline void SetVersionName(const char* value) { m_versionName.assign(value); } /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline GetDocumentResult& WithVersionName(const Aws::String& value) { SetVersionName(value); return *this;} /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline GetDocumentResult& WithVersionName(Aws::String&& value) { SetVersionName(std::move(value)); return *this;} /** *

The version of the artifact associated with the document. For example, * "Release 12, Update 6". This value is unique across all versions of a document, * and can't be changed.

*/ inline GetDocumentResult& WithVersionName(const char* value) { SetVersionName(value); return *this;} /** *

The document version.

*/ inline const Aws::String& GetDocumentVersion() const{ return m_documentVersion; } /** *

The document version.

*/ inline void SetDocumentVersion(const Aws::String& value) { m_documentVersion = value; } /** *

The document version.

*/ inline void SetDocumentVersion(Aws::String&& value) { m_documentVersion = std::move(value); } /** *

The document version.

*/ inline void SetDocumentVersion(const char* value) { m_documentVersion.assign(value); } /** *

The document version.

*/ inline GetDocumentResult& WithDocumentVersion(const Aws::String& value) { SetDocumentVersion(value); return *this;} /** *

The document version.

*/ inline GetDocumentResult& WithDocumentVersion(Aws::String&& value) { SetDocumentVersion(std::move(value)); return *this;} /** *

The document version.

*/ inline GetDocumentResult& WithDocumentVersion(const char* value) { SetDocumentVersion(value); return *this;} /** *

The status of the SSM document, such as Creating, * Active, Updating, Failed, and * Deleting.

*/ inline const DocumentStatus& GetStatus() const{ return m_status; } /** *

The status of the SSM document, such as Creating, * Active, Updating, Failed, and * Deleting.

*/ inline void SetStatus(const DocumentStatus& value) { m_status = value; } /** *

The status of the SSM document, such as Creating, * Active, Updating, Failed, and * Deleting.

*/ inline void SetStatus(DocumentStatus&& value) { m_status = std::move(value); } /** *

The status of the SSM document, such as Creating, * Active, Updating, Failed, and * Deleting.

*/ inline GetDocumentResult& WithStatus(const DocumentStatus& value) { SetStatus(value); return *this;} /** *

The status of the SSM document, such as Creating, * Active, Updating, Failed, and * Deleting.

*/ inline GetDocumentResult& WithStatus(DocumentStatus&& value) { SetStatus(std::move(value)); return *this;} /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline const Aws::String& GetStatusInformation() const{ return m_statusInformation; } /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline void SetStatusInformation(const Aws::String& value) { m_statusInformation = value; } /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline void SetStatusInformation(Aws::String&& value) { m_statusInformation = std::move(value); } /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline void SetStatusInformation(const char* value) { m_statusInformation.assign(value); } /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline GetDocumentResult& WithStatusInformation(const Aws::String& value) { SetStatusInformation(value); return *this;} /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline GetDocumentResult& WithStatusInformation(Aws::String&& value) { SetStatusInformation(std::move(value)); return *this;} /** *

A message returned by Amazon Web Services Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket doesn't exist. Verify that the URL of the S3 bucket is correct."

*/ inline GetDocumentResult& WithStatusInformation(const char* value) { SetStatusInformation(value); return *this;} /** *

The contents of the SSM document.

*/ inline const Aws::String& GetContent() const{ return m_content; } /** *

The contents of the SSM document.

*/ inline void SetContent(const Aws::String& value) { m_content = value; } /** *

The contents of the SSM document.

*/ inline void SetContent(Aws::String&& value) { m_content = std::move(value); } /** *

The contents of the SSM document.

*/ inline void SetContent(const char* value) { m_content.assign(value); } /** *

The contents of the SSM document.

*/ inline GetDocumentResult& WithContent(const Aws::String& value) { SetContent(value); return *this;} /** *

The contents of the SSM document.

*/ inline GetDocumentResult& WithContent(Aws::String&& value) { SetContent(std::move(value)); return *this;} /** *

The contents of the SSM document.

*/ inline GetDocumentResult& WithContent(const char* value) { SetContent(value); return *this;} /** *

The document type.

*/ inline const DocumentType& GetDocumentType() const{ return m_documentType; } /** *

The document type.

*/ inline void SetDocumentType(const DocumentType& value) { m_documentType = value; } /** *

The document type.

*/ inline void SetDocumentType(DocumentType&& value) { m_documentType = std::move(value); } /** *

The document type.

*/ inline GetDocumentResult& WithDocumentType(const DocumentType& value) { SetDocumentType(value); return *this;} /** *

The document type.

*/ inline GetDocumentResult& WithDocumentType(DocumentType&& value) { SetDocumentType(std::move(value)); return *this;} /** *

The document format, either JSON or YAML.

*/ inline const DocumentFormat& GetDocumentFormat() const{ return m_documentFormat; } /** *

The document format, either JSON or YAML.

*/ inline void SetDocumentFormat(const DocumentFormat& value) { m_documentFormat = value; } /** *

The document format, either JSON or YAML.

*/ inline void SetDocumentFormat(DocumentFormat&& value) { m_documentFormat = std::move(value); } /** *

The document format, either JSON or YAML.

*/ inline GetDocumentResult& WithDocumentFormat(const DocumentFormat& value) { SetDocumentFormat(value); return *this;} /** *

The document format, either JSON or YAML.

*/ inline GetDocumentResult& WithDocumentFormat(DocumentFormat&& value) { SetDocumentFormat(std::move(value)); return *this;} /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline const Aws::Vector& GetRequires() const{ return m_requires; } /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline void SetRequires(const Aws::Vector& value) { m_requires = value; } /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline void SetRequires(Aws::Vector&& value) { m_requires = std::move(value); } /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline GetDocumentResult& WithRequires(const Aws::Vector& value) { SetRequires(value); return *this;} /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline GetDocumentResult& WithRequires(Aws::Vector&& value) { SetRequires(std::move(value)); return *this;} /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline GetDocumentResult& AddRequires(const DocumentRequires& value) { m_requires.push_back(value); return *this; } /** *

A list of SSM documents required by a document. For example, an * ApplicationConfiguration document requires an * ApplicationConfigurationSchema document.

*/ inline GetDocumentResult& AddRequires(DocumentRequires&& value) { m_requires.push_back(std::move(value)); return *this; } /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline const Aws::Vector& GetAttachmentsContent() const{ return m_attachmentsContent; } /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline void SetAttachmentsContent(const Aws::Vector& value) { m_attachmentsContent = value; } /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline void SetAttachmentsContent(Aws::Vector&& value) { m_attachmentsContent = std::move(value); } /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline GetDocumentResult& WithAttachmentsContent(const Aws::Vector& value) { SetAttachmentsContent(value); return *this;} /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline GetDocumentResult& WithAttachmentsContent(Aws::Vector&& value) { SetAttachmentsContent(std::move(value)); return *this;} /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline GetDocumentResult& AddAttachmentsContent(const AttachmentContent& value) { m_attachmentsContent.push_back(value); return *this; } /** *

A description of the document attachments, including names, locations, sizes, * and so on.

*/ inline GetDocumentResult& AddAttachmentsContent(AttachmentContent&& value) { m_attachmentsContent.push_back(std::move(value)); return *this; } /** *

The current review status of a new custom Systems Manager document (SSM * document) created by a member of your organization, or of the latest version of * an existing SSM document.

Only one version of an SSM document can be in * the APPROVED state at a time. When a new version is approved, the status of the * previous version changes to REJECTED.

Only one version of an SSM document * can be in review, or PENDING, at a time.

*/ inline const ReviewStatus& GetReviewStatus() const{ return m_reviewStatus; } /** *

The current review status of a new custom Systems Manager document (SSM * document) created by a member of your organization, or of the latest version of * an existing SSM document.

Only one version of an SSM document can be in * the APPROVED state at a time. When a new version is approved, the status of the * previous version changes to REJECTED.

Only one version of an SSM document * can be in review, or PENDING, at a time.

*/ inline void SetReviewStatus(const ReviewStatus& value) { m_reviewStatus = value; } /** *

The current review status of a new custom Systems Manager document (SSM * document) created by a member of your organization, or of the latest version of * an existing SSM document.

Only one version of an SSM document can be in * the APPROVED state at a time. When a new version is approved, the status of the * previous version changes to REJECTED.

Only one version of an SSM document * can be in review, or PENDING, at a time.

*/ inline void SetReviewStatus(ReviewStatus&& value) { m_reviewStatus = std::move(value); } /** *

The current review status of a new custom Systems Manager document (SSM * document) created by a member of your organization, or of the latest version of * an existing SSM document.

Only one version of an SSM document can be in * the APPROVED state at a time. When a new version is approved, the status of the * previous version changes to REJECTED.

Only one version of an SSM document * can be in review, or PENDING, at a time.

*/ inline GetDocumentResult& WithReviewStatus(const ReviewStatus& value) { SetReviewStatus(value); return *this;} /** *

The current review status of a new custom Systems Manager document (SSM * document) created by a member of your organization, or of the latest version of * an existing SSM document.

Only one version of an SSM document can be in * the APPROVED state at a time. When a new version is approved, the status of the * previous version changes to REJECTED.

Only one version of an SSM document * can be in review, or PENDING, at a time.

*/ inline GetDocumentResult& WithReviewStatus(ReviewStatus&& value) { SetReviewStatus(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetDocumentResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetDocumentResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetDocumentResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_name; Aws::Utils::DateTime m_createdDate; Aws::String m_displayName; Aws::String m_versionName; Aws::String m_documentVersion; DocumentStatus m_status; Aws::String m_statusInformation; Aws::String m_content; DocumentType m_documentType; DocumentFormat m_documentFormat; Aws::Vector m_requires; Aws::Vector m_attachmentsContent; ReviewStatus m_reviewStatus; Aws::String m_requestId; }; } // namespace Model } // namespace SSM } // namespace Aws