/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the metadata of a resource.See Also:
AWS
* API Reference
The type of resource.
*/ inline const ResourceType& GetType() const{ return m_type; } /** *The type of resource.
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The type of resource.
*/ inline void SetType(const ResourceType& value) { m_typeHasBeenSet = true; m_type = value; } /** *The type of resource.
*/ inline void SetType(ResourceType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The type of resource.
*/ inline ResourceMetadata& WithType(const ResourceType& value) { SetType(value); return *this;} /** *The type of resource.
*/ inline ResourceMetadata& WithType(ResourceType&& value) { SetType(std::move(value)); return *this;} /** *The name of the resource.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the resource.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the resource.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the resource.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the resource.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the resource.
*/ inline ResourceMetadata& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the resource.
*/ inline ResourceMetadata& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the resource.
*/ inline ResourceMetadata& WithName(const char* value) { SetName(value); return *this;} /** *The original name of the resource before a rename operation.
*/ inline const Aws::String& GetOriginalName() const{ return m_originalName; } /** *The original name of the resource before a rename operation.
*/ inline bool OriginalNameHasBeenSet() const { return m_originalNameHasBeenSet; } /** *The original name of the resource before a rename operation.
*/ inline void SetOriginalName(const Aws::String& value) { m_originalNameHasBeenSet = true; m_originalName = value; } /** *The original name of the resource before a rename operation.
*/ inline void SetOriginalName(Aws::String&& value) { m_originalNameHasBeenSet = true; m_originalName = std::move(value); } /** *The original name of the resource before a rename operation.
*/ inline void SetOriginalName(const char* value) { m_originalNameHasBeenSet = true; m_originalName.assign(value); } /** *The original name of the resource before a rename operation.
*/ inline ResourceMetadata& WithOriginalName(const Aws::String& value) { SetOriginalName(value); return *this;} /** *The original name of the resource before a rename operation.
*/ inline ResourceMetadata& WithOriginalName(Aws::String&& value) { SetOriginalName(std::move(value)); return *this;} /** *The original name of the resource before a rename operation.
*/ inline ResourceMetadata& WithOriginalName(const char* value) { SetOriginalName(value); return *this;} /** *The ID of the resource.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The ID of the resource.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The ID of the resource.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The ID of the resource.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The ID of the resource.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The ID of the resource.
*/ inline ResourceMetadata& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The ID of the resource.
*/ inline ResourceMetadata& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The ID of the resource.
*/ inline ResourceMetadata& WithId(const char* value) { SetId(value); return *this;} /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline const Aws::String& GetVersionId() const{ return m_versionId; } /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline bool VersionIdHasBeenSet() const { return m_versionIdHasBeenSet; } /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline void SetVersionId(const Aws::String& value) { m_versionIdHasBeenSet = true; m_versionId = value; } /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline void SetVersionId(Aws::String&& value) { m_versionIdHasBeenSet = true; m_versionId = std::move(value); } /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline void SetVersionId(const char* value) { m_versionIdHasBeenSet = true; m_versionId.assign(value); } /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline ResourceMetadata& WithVersionId(const Aws::String& value) { SetVersionId(value); return *this;} /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline ResourceMetadata& WithVersionId(Aws::String&& value) { SetVersionId(std::move(value)); return *this;} /** *The version ID of the resource. This is an optional field and is filled for * action on document version.
*/ inline ResourceMetadata& WithVersionId(const char* value) { SetVersionId(value); return *this;} /** *The owner of the resource.
*/ inline const UserMetadata& GetOwner() const{ return m_owner; } /** *The owner of the resource.
*/ inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } /** *The owner of the resource.
*/ inline void SetOwner(const UserMetadata& value) { m_ownerHasBeenSet = true; m_owner = value; } /** *The owner of the resource.
*/ inline void SetOwner(UserMetadata&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } /** *The owner of the resource.
*/ inline ResourceMetadata& WithOwner(const UserMetadata& value) { SetOwner(value); return *this;} /** *The owner of the resource.
*/ inline ResourceMetadata& WithOwner(UserMetadata&& value) { SetOwner(std::move(value)); return *this;} /** *The parent ID of the resource before a rename operation.
*/ inline const Aws::String& GetParentId() const{ return m_parentId; } /** *The parent ID of the resource before a rename operation.
*/ inline bool ParentIdHasBeenSet() const { return m_parentIdHasBeenSet; } /** *The parent ID of the resource before a rename operation.
*/ inline void SetParentId(const Aws::String& value) { m_parentIdHasBeenSet = true; m_parentId = value; } /** *The parent ID of the resource before a rename operation.
*/ inline void SetParentId(Aws::String&& value) { m_parentIdHasBeenSet = true; m_parentId = std::move(value); } /** *The parent ID of the resource before a rename operation.
*/ inline void SetParentId(const char* value) { m_parentIdHasBeenSet = true; m_parentId.assign(value); } /** *The parent ID of the resource before a rename operation.
*/ inline ResourceMetadata& WithParentId(const Aws::String& value) { SetParentId(value); return *this;} /** *The parent ID of the resource before a rename operation.
*/ inline ResourceMetadata& WithParentId(Aws::String&& value) { SetParentId(std::move(value)); return *this;} /** *The parent ID of the resource before a rename operation.
*/ inline ResourceMetadata& WithParentId(const char* value) { SetParentId(value); return *this;} private: ResourceType m_type; bool m_typeHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_originalName; bool m_originalNameHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_versionId; bool m_versionIdHasBeenSet = false; UserMetadata m_owner; bool m_ownerHasBeenSet = false; Aws::String m_parentId; bool m_parentIdHasBeenSet = false; }; } // namespace Model } // namespace WorkDocs } // namespace Aws