1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/quicksight/QuickSight_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/quicksight/model/FolderType.h> 10 #include <aws/core/utils/memory/stl/AWSVector.h> 11 #include <aws/core/utils/DateTime.h> 12 #include <utility> 13 14 namespace Aws 15 { 16 namespace Utils 17 { 18 namespace Json 19 { 20 class JsonValue; 21 class JsonView; 22 } // namespace Json 23 } // namespace Utils 24 namespace QuickSight 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>A folder.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/quicksight-2018-04-01/Folder">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_QUICKSIGHT_API Folder 35 { 36 public: 37 Folder(); 38 Folder(Aws::Utils::Json::JsonView jsonValue); 39 Folder& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>The folder ID.</p> 45 */ GetFolderId()46 inline const Aws::String& GetFolderId() const{ return m_folderId; } 47 48 /** 49 * <p>The folder ID.</p> 50 */ FolderIdHasBeenSet()51 inline bool FolderIdHasBeenSet() const { return m_folderIdHasBeenSet; } 52 53 /** 54 * <p>The folder ID.</p> 55 */ SetFolderId(const Aws::String & value)56 inline void SetFolderId(const Aws::String& value) { m_folderIdHasBeenSet = true; m_folderId = value; } 57 58 /** 59 * <p>The folder ID.</p> 60 */ SetFolderId(Aws::String && value)61 inline void SetFolderId(Aws::String&& value) { m_folderIdHasBeenSet = true; m_folderId = std::move(value); } 62 63 /** 64 * <p>The folder ID.</p> 65 */ SetFolderId(const char * value)66 inline void SetFolderId(const char* value) { m_folderIdHasBeenSet = true; m_folderId.assign(value); } 67 68 /** 69 * <p>The folder ID.</p> 70 */ WithFolderId(const Aws::String & value)71 inline Folder& WithFolderId(const Aws::String& value) { SetFolderId(value); return *this;} 72 73 /** 74 * <p>The folder ID.</p> 75 */ WithFolderId(Aws::String && value)76 inline Folder& WithFolderId(Aws::String&& value) { SetFolderId(std::move(value)); return *this;} 77 78 /** 79 * <p>The folder ID.</p> 80 */ WithFolderId(const char * value)81 inline Folder& WithFolderId(const char* value) { SetFolderId(value); return *this;} 82 83 84 /** 85 * <p>The folder Amazon Resource Name (ARN).</p> 86 */ GetArn()87 inline const Aws::String& GetArn() const{ return m_arn; } 88 89 /** 90 * <p>The folder Amazon Resource Name (ARN).</p> 91 */ ArnHasBeenSet()92 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } 93 94 /** 95 * <p>The folder Amazon Resource Name (ARN).</p> 96 */ SetArn(const Aws::String & value)97 inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } 98 99 /** 100 * <p>The folder Amazon Resource Name (ARN).</p> 101 */ SetArn(Aws::String && value)102 inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } 103 104 /** 105 * <p>The folder Amazon Resource Name (ARN).</p> 106 */ SetArn(const char * value)107 inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } 108 109 /** 110 * <p>The folder Amazon Resource Name (ARN).</p> 111 */ WithArn(const Aws::String & value)112 inline Folder& WithArn(const Aws::String& value) { SetArn(value); return *this;} 113 114 /** 115 * <p>The folder Amazon Resource Name (ARN).</p> 116 */ WithArn(Aws::String && value)117 inline Folder& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} 118 119 /** 120 * <p>The folder Amazon Resource Name (ARN).</p> 121 */ WithArn(const char * value)122 inline Folder& WithArn(const char* value) { SetArn(value); return *this;} 123 124 125 /** 126 * <p>A display name for the folder.</p> 127 */ GetName()128 inline const Aws::String& GetName() const{ return m_name; } 129 130 /** 131 * <p>A display name for the folder.</p> 132 */ NameHasBeenSet()133 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } 134 135 /** 136 * <p>A display name for the folder.</p> 137 */ SetName(const Aws::String & value)138 inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } 139 140 /** 141 * <p>A display name for the folder.</p> 142 */ SetName(Aws::String && value)143 inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } 144 145 /** 146 * <p>A display name for the folder.</p> 147 */ SetName(const char * value)148 inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } 149 150 /** 151 * <p>A display name for the folder.</p> 152 */ WithName(const Aws::String & value)153 inline Folder& WithName(const Aws::String& value) { SetName(value); return *this;} 154 155 /** 156 * <p>A display name for the folder.</p> 157 */ WithName(Aws::String && value)158 inline Folder& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} 159 160 /** 161 * <p>A display name for the folder.</p> 162 */ WithName(const char * value)163 inline Folder& WithName(const char* value) { SetName(value); return *this;} 164 165 166 /** 167 * <p>The type of the folder.</p> 168 */ GetFolderType()169 inline const FolderType& GetFolderType() const{ return m_folderType; } 170 171 /** 172 * <p>The type of the folder.</p> 173 */ FolderTypeHasBeenSet()174 inline bool FolderTypeHasBeenSet() const { return m_folderTypeHasBeenSet; } 175 176 /** 177 * <p>The type of the folder.</p> 178 */ SetFolderType(const FolderType & value)179 inline void SetFolderType(const FolderType& value) { m_folderTypeHasBeenSet = true; m_folderType = value; } 180 181 /** 182 * <p>The type of the folder.</p> 183 */ SetFolderType(FolderType && value)184 inline void SetFolderType(FolderType&& value) { m_folderTypeHasBeenSet = true; m_folderType = std::move(value); } 185 186 /** 187 * <p>The type of the folder.</p> 188 */ WithFolderType(const FolderType & value)189 inline Folder& WithFolderType(const FolderType& value) { SetFolderType(value); return *this;} 190 191 /** 192 * <p>The type of the folder.</p> 193 */ WithFolderType(FolderType && value)194 inline Folder& WithFolderType(FolderType&& value) { SetFolderType(std::move(value)); return *this;} 195 196 197 /** 198 * <p>An array of ancestor folder ARN strings.</p> 199 */ GetFolderPath()200 inline const Aws::Vector<Aws::String>& GetFolderPath() const{ return m_folderPath; } 201 202 /** 203 * <p>An array of ancestor folder ARN strings.</p> 204 */ FolderPathHasBeenSet()205 inline bool FolderPathHasBeenSet() const { return m_folderPathHasBeenSet; } 206 207 /** 208 * <p>An array of ancestor folder ARN strings.</p> 209 */ SetFolderPath(const Aws::Vector<Aws::String> & value)210 inline void SetFolderPath(const Aws::Vector<Aws::String>& value) { m_folderPathHasBeenSet = true; m_folderPath = value; } 211 212 /** 213 * <p>An array of ancestor folder ARN strings.</p> 214 */ SetFolderPath(Aws::Vector<Aws::String> && value)215 inline void SetFolderPath(Aws::Vector<Aws::String>&& value) { m_folderPathHasBeenSet = true; m_folderPath = std::move(value); } 216 217 /** 218 * <p>An array of ancestor folder ARN strings.</p> 219 */ WithFolderPath(const Aws::Vector<Aws::String> & value)220 inline Folder& WithFolderPath(const Aws::Vector<Aws::String>& value) { SetFolderPath(value); return *this;} 221 222 /** 223 * <p>An array of ancestor folder ARN strings.</p> 224 */ WithFolderPath(Aws::Vector<Aws::String> && value)225 inline Folder& WithFolderPath(Aws::Vector<Aws::String>&& value) { SetFolderPath(std::move(value)); return *this;} 226 227 /** 228 * <p>An array of ancestor folder ARN strings.</p> 229 */ AddFolderPath(const Aws::String & value)230 inline Folder& AddFolderPath(const Aws::String& value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(value); return *this; } 231 232 /** 233 * <p>An array of ancestor folder ARN strings.</p> 234 */ AddFolderPath(Aws::String && value)235 inline Folder& AddFolderPath(Aws::String&& value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(std::move(value)); return *this; } 236 237 /** 238 * <p>An array of ancestor folder ARN strings.</p> 239 */ AddFolderPath(const char * value)240 inline Folder& AddFolderPath(const char* value) { m_folderPathHasBeenSet = true; m_folderPath.push_back(value); return *this; } 241 242 243 /** 244 * <p>The time that the folder was created.</p> 245 */ GetCreatedTime()246 inline const Aws::Utils::DateTime& GetCreatedTime() const{ return m_createdTime; } 247 248 /** 249 * <p>The time that the folder was created.</p> 250 */ CreatedTimeHasBeenSet()251 inline bool CreatedTimeHasBeenSet() const { return m_createdTimeHasBeenSet; } 252 253 /** 254 * <p>The time that the folder was created.</p> 255 */ SetCreatedTime(const Aws::Utils::DateTime & value)256 inline void SetCreatedTime(const Aws::Utils::DateTime& value) { m_createdTimeHasBeenSet = true; m_createdTime = value; } 257 258 /** 259 * <p>The time that the folder was created.</p> 260 */ SetCreatedTime(Aws::Utils::DateTime && value)261 inline void SetCreatedTime(Aws::Utils::DateTime&& value) { m_createdTimeHasBeenSet = true; m_createdTime = std::move(value); } 262 263 /** 264 * <p>The time that the folder was created.</p> 265 */ WithCreatedTime(const Aws::Utils::DateTime & value)266 inline Folder& WithCreatedTime(const Aws::Utils::DateTime& value) { SetCreatedTime(value); return *this;} 267 268 /** 269 * <p>The time that the folder was created.</p> 270 */ WithCreatedTime(Aws::Utils::DateTime && value)271 inline Folder& WithCreatedTime(Aws::Utils::DateTime&& value) { SetCreatedTime(std::move(value)); return *this;} 272 273 274 /** 275 * <p>The time that the folder was last updated.</p> 276 */ GetLastUpdatedTime()277 inline const Aws::Utils::DateTime& GetLastUpdatedTime() const{ return m_lastUpdatedTime; } 278 279 /** 280 * <p>The time that the folder was last updated.</p> 281 */ LastUpdatedTimeHasBeenSet()282 inline bool LastUpdatedTimeHasBeenSet() const { return m_lastUpdatedTimeHasBeenSet; } 283 284 /** 285 * <p>The time that the folder was last updated.</p> 286 */ SetLastUpdatedTime(const Aws::Utils::DateTime & value)287 inline void SetLastUpdatedTime(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = value; } 288 289 /** 290 * <p>The time that the folder was last updated.</p> 291 */ SetLastUpdatedTime(Aws::Utils::DateTime && value)292 inline void SetLastUpdatedTime(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeHasBeenSet = true; m_lastUpdatedTime = std::move(value); } 293 294 /** 295 * <p>The time that the folder was last updated.</p> 296 */ WithLastUpdatedTime(const Aws::Utils::DateTime & value)297 inline Folder& WithLastUpdatedTime(const Aws::Utils::DateTime& value) { SetLastUpdatedTime(value); return *this;} 298 299 /** 300 * <p>The time that the folder was last updated.</p> 301 */ WithLastUpdatedTime(Aws::Utils::DateTime && value)302 inline Folder& WithLastUpdatedTime(Aws::Utils::DateTime&& value) { SetLastUpdatedTime(std::move(value)); return *this;} 303 304 private: 305 306 Aws::String m_folderId; 307 bool m_folderIdHasBeenSet; 308 309 Aws::String m_arn; 310 bool m_arnHasBeenSet; 311 312 Aws::String m_name; 313 bool m_nameHasBeenSet; 314 315 FolderType m_folderType; 316 bool m_folderTypeHasBeenSet; 317 318 Aws::Vector<Aws::String> m_folderPath; 319 bool m_folderPathHasBeenSet; 320 321 Aws::Utils::DateTime m_createdTime; 322 bool m_createdTimeHasBeenSet; 323 324 Aws::Utils::DateTime m_lastUpdatedTime; 325 bool m_lastUpdatedTimeHasBeenSet; 326 }; 327 328 } // namespace Model 329 } // namespace QuickSight 330 } // namespace Aws 331