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

A folder in Amazon QuickSight.

See Also:

AWS * API Reference

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

The ID of the folder.

*/ inline const Aws::String& GetFolderId() const{ return m_folderId; } /** *

The ID of the folder.

*/ inline bool FolderIdHasBeenSet() const { return m_folderIdHasBeenSet; } /** *

The ID of the folder.

*/ inline void SetFolderId(const Aws::String& value) { m_folderIdHasBeenSet = true; m_folderId = value; } /** *

The ID of the folder.

*/ inline void SetFolderId(Aws::String&& value) { m_folderIdHasBeenSet = true; m_folderId = std::move(value); } /** *

The ID of the folder.

*/ inline void SetFolderId(const char* value) { m_folderIdHasBeenSet = true; m_folderId.assign(value); } /** *

The ID of the folder.

*/ inline Folder& WithFolderId(const Aws::String& value) { SetFolderId(value); return *this;} /** *

The ID of the folder.

*/ inline Folder& WithFolderId(Aws::String&& value) { SetFolderId(std::move(value)); return *this;} /** *

The ID of the folder.

*/ inline Folder& WithFolderId(const char* value) { SetFolderId(value); return *this;} /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline Folder& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline Folder& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) for the folder.

*/ inline Folder& WithArn(const char* value) { SetArn(value); return *this;} /** *

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

A display name for the folder.

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

The type of folder it is.

*/ inline const FolderType& GetFolderType() const{ return m_folderType; } /** *

The type of folder it is.

*/ inline bool FolderTypeHasBeenSet() const { return m_folderTypeHasBeenSet; } /** *

The type of folder it is.

*/ inline void SetFolderType(const FolderType& value) { m_folderTypeHasBeenSet = true; m_folderType = value; } /** *

The type of folder it is.

*/ inline void SetFolderType(FolderType&& value) { m_folderTypeHasBeenSet = true; m_folderType = std::move(value); } /** *

The type of folder it is.

*/ inline Folder& WithFolderType(const FolderType& value) { SetFolderType(value); return *this;} /** *

The type of folder it is.

*/ inline Folder& WithFolderType(FolderType&& value) { SetFolderType(std::move(value)); return *this;} /** *

An array of ancestor ARN strings for the folder.

*/ inline const Aws::Vector& GetFolderPath() const{ return m_folderPath; } /** *

An array of ancestor ARN strings for the folder.

*/ inline bool FolderPathHasBeenSet() const { return m_folderPathHasBeenSet; } /** *

An array of ancestor ARN strings for the folder.

*/ inline void SetFolderPath(const Aws::Vector& value) { m_folderPathHasBeenSet = true; m_folderPath = value; } /** *

An array of ancestor ARN strings for the folder.

*/ inline void SetFolderPath(Aws::Vector&& value) { m_folderPathHasBeenSet = true; m_folderPath = std::move(value); } /** *

An array of ancestor ARN strings for the folder.

*/ inline Folder& WithFolderPath(const Aws::Vector& value) { SetFolderPath(value); return *this;} /** *

An array of ancestor ARN strings for the folder.

*/ inline Folder& WithFolderPath(Aws::Vector&& value) { SetFolderPath(std::move(value)); return *this;} /** *

An array of ancestor ARN strings for the folder.

*/ inline Folder& AddFolderPath(const Aws::String& value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(value); return *this; } /** *

An array of ancestor ARN strings for the folder.

*/ inline Folder& AddFolderPath(Aws::String&& value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(std::move(value)); return *this; } /** *

An array of ancestor ARN strings for the folder.

*/ inline Folder& AddFolderPath(const char* value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(value); return *this; } /** *

The time that the folder was created.

*/ inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } /** *

The time that the folder was created.

*/ inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } /** *

The time that the folder was created.

*/ inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } /** *

The time that the folder was created.

*/ inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } /** *

The time that the folder was created.

*/ inline Folder& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} /** *

The time that the folder was created.

*/ inline Folder& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} /** *

The time that the folder was last updated.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } /** *

The time that the folder was last updated.

*/ inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } /** *

The time that the folder was last updated.

*/ inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } /** *

The time that the folder was last updated.

*/ inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } /** *

The time that the folder was last updated.

*/ inline Folder& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} /** *

The time that the folder was last updated.

*/ inline Folder& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} private: Aws::String m_folderId; bool m_folderIdHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; FolderType m_folderType; bool m_folderTypeHasBeenSet = false; Aws::Vector m_folderPath; bool m_folderPathHasBeenSet = false; Aws::Utils::DateTime m_createdTime; bool m_createdTimeHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedTime; bool m_lastUpdatedTimeHasBeenSet = false; }; } // namespace Model } // namespace QuickSight } // namespace Aws