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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

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

The name of the Systems Manager document.

*/ inline GetDocumentResult& WithName(const char* value) { SetName(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 cannot 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 cannot 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 cannot 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 cannot 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 cannot 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 cannot 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 cannot 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 Systems Manager document, such as Creating, * Active, Updating, Failed, and * Deleting.

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

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

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

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

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

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

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

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

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

A message returned by AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not exist. Verify that the URL of the S3 bucket is correct."

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

A message returned by AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 AWS Systems Manager that explains the * Status value. For example, a Failed status might be * explained by the StatusInformation message, "The specified S3 * bucket does not 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 Systems Manager document.

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

The contents of the Systems Manager document.

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

The contents of the Systems Manager document.

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

The contents of the Systems Manager document.

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

The contents of the Systems Manager document.

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

The contents of the Systems Manager document.

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

The contents of the Systems Manager 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; } private: Aws::String m_name; 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; }; } // namespace Model } // namespace SSM } // namespace Aws