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/dynamodb/DynamoDB_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/core/utils/DateTime.h> 10 #include <aws/dynamodb/model/BackupStatus.h> 11 #include <aws/dynamodb/model/BackupType.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 DynamoDB 25 { 26 namespace Model 27 { 28 29 /** 30 * <p>Contains details for the backup.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/BackupSummary">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_DYNAMODB_API BackupSummary 35 { 36 public: 37 BackupSummary(); 38 BackupSummary(Aws::Utils::Json::JsonView jsonValue); 39 BackupSummary& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>Name of the table.</p> 45 */ GetTableName()46 inline const Aws::String& GetTableName() const{ return m_tableName; } 47 48 /** 49 * <p>Name of the table.</p> 50 */ TableNameHasBeenSet()51 inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; } 52 53 /** 54 * <p>Name of the table.</p> 55 */ SetTableName(const Aws::String & value)56 inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; } 57 58 /** 59 * <p>Name of the table.</p> 60 */ SetTableName(Aws::String && value)61 inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = std::move(value); } 62 63 /** 64 * <p>Name of the table.</p> 65 */ SetTableName(const char * value)66 inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); } 67 68 /** 69 * <p>Name of the table.</p> 70 */ WithTableName(const Aws::String & value)71 inline BackupSummary& WithTableName(const Aws::String& value) { SetTableName(value); return *this;} 72 73 /** 74 * <p>Name of the table.</p> 75 */ WithTableName(Aws::String && value)76 inline BackupSummary& WithTableName(Aws::String&& value) { SetTableName(std::move(value)); return *this;} 77 78 /** 79 * <p>Name of the table.</p> 80 */ WithTableName(const char * value)81 inline BackupSummary& WithTableName(const char* value) { SetTableName(value); return *this;} 82 83 84 /** 85 * <p>Unique identifier for the table.</p> 86 */ GetTableId()87 inline const Aws::String& GetTableId() const{ return m_tableId; } 88 89 /** 90 * <p>Unique identifier for the table.</p> 91 */ TableIdHasBeenSet()92 inline bool TableIdHasBeenSet() const { return m_tableIdHasBeenSet; } 93 94 /** 95 * <p>Unique identifier for the table.</p> 96 */ SetTableId(const Aws::String & value)97 inline void SetTableId(const Aws::String& value) { m_tableIdHasBeenSet = true; m_tableId = value; } 98 99 /** 100 * <p>Unique identifier for the table.</p> 101 */ SetTableId(Aws::String && value)102 inline void SetTableId(Aws::String&& value) { m_tableIdHasBeenSet = true; m_tableId = std::move(value); } 103 104 /** 105 * <p>Unique identifier for the table.</p> 106 */ SetTableId(const char * value)107 inline void SetTableId(const char* value) { m_tableIdHasBeenSet = true; m_tableId.assign(value); } 108 109 /** 110 * <p>Unique identifier for the table.</p> 111 */ WithTableId(const Aws::String & value)112 inline BackupSummary& WithTableId(const Aws::String& value) { SetTableId(value); return *this;} 113 114 /** 115 * <p>Unique identifier for the table.</p> 116 */ WithTableId(Aws::String && value)117 inline BackupSummary& WithTableId(Aws::String&& value) { SetTableId(std::move(value)); return *this;} 118 119 /** 120 * <p>Unique identifier for the table.</p> 121 */ WithTableId(const char * value)122 inline BackupSummary& WithTableId(const char* value) { SetTableId(value); return *this;} 123 124 125 /** 126 * <p>ARN associated with the table.</p> 127 */ GetTableArn()128 inline const Aws::String& GetTableArn() const{ return m_tableArn; } 129 130 /** 131 * <p>ARN associated with the table.</p> 132 */ TableArnHasBeenSet()133 inline bool TableArnHasBeenSet() const { return m_tableArnHasBeenSet; } 134 135 /** 136 * <p>ARN associated with the table.</p> 137 */ SetTableArn(const Aws::String & value)138 inline void SetTableArn(const Aws::String& value) { m_tableArnHasBeenSet = true; m_tableArn = value; } 139 140 /** 141 * <p>ARN associated with the table.</p> 142 */ SetTableArn(Aws::String && value)143 inline void SetTableArn(Aws::String&& value) { m_tableArnHasBeenSet = true; m_tableArn = std::move(value); } 144 145 /** 146 * <p>ARN associated with the table.</p> 147 */ SetTableArn(const char * value)148 inline void SetTableArn(const char* value) { m_tableArnHasBeenSet = true; m_tableArn.assign(value); } 149 150 /** 151 * <p>ARN associated with the table.</p> 152 */ WithTableArn(const Aws::String & value)153 inline BackupSummary& WithTableArn(const Aws::String& value) { SetTableArn(value); return *this;} 154 155 /** 156 * <p>ARN associated with the table.</p> 157 */ WithTableArn(Aws::String && value)158 inline BackupSummary& WithTableArn(Aws::String&& value) { SetTableArn(std::move(value)); return *this;} 159 160 /** 161 * <p>ARN associated with the table.</p> 162 */ WithTableArn(const char * value)163 inline BackupSummary& WithTableArn(const char* value) { SetTableArn(value); return *this;} 164 165 166 /** 167 * <p>ARN associated with the backup.</p> 168 */ GetBackupArn()169 inline const Aws::String& GetBackupArn() const{ return m_backupArn; } 170 171 /** 172 * <p>ARN associated with the backup.</p> 173 */ BackupArnHasBeenSet()174 inline bool BackupArnHasBeenSet() const { return m_backupArnHasBeenSet; } 175 176 /** 177 * <p>ARN associated with the backup.</p> 178 */ SetBackupArn(const Aws::String & value)179 inline void SetBackupArn(const Aws::String& value) { m_backupArnHasBeenSet = true; m_backupArn = value; } 180 181 /** 182 * <p>ARN associated with the backup.</p> 183 */ SetBackupArn(Aws::String && value)184 inline void SetBackupArn(Aws::String&& value) { m_backupArnHasBeenSet = true; m_backupArn = std::move(value); } 185 186 /** 187 * <p>ARN associated with the backup.</p> 188 */ SetBackupArn(const char * value)189 inline void SetBackupArn(const char* value) { m_backupArnHasBeenSet = true; m_backupArn.assign(value); } 190 191 /** 192 * <p>ARN associated with the backup.</p> 193 */ WithBackupArn(const Aws::String & value)194 inline BackupSummary& WithBackupArn(const Aws::String& value) { SetBackupArn(value); return *this;} 195 196 /** 197 * <p>ARN associated with the backup.</p> 198 */ WithBackupArn(Aws::String && value)199 inline BackupSummary& WithBackupArn(Aws::String&& value) { SetBackupArn(std::move(value)); return *this;} 200 201 /** 202 * <p>ARN associated with the backup.</p> 203 */ WithBackupArn(const char * value)204 inline BackupSummary& WithBackupArn(const char* value) { SetBackupArn(value); return *this;} 205 206 207 /** 208 * <p>Name of the specified backup.</p> 209 */ GetBackupName()210 inline const Aws::String& GetBackupName() const{ return m_backupName; } 211 212 /** 213 * <p>Name of the specified backup.</p> 214 */ BackupNameHasBeenSet()215 inline bool BackupNameHasBeenSet() const { return m_backupNameHasBeenSet; } 216 217 /** 218 * <p>Name of the specified backup.</p> 219 */ SetBackupName(const Aws::String & value)220 inline void SetBackupName(const Aws::String& value) { m_backupNameHasBeenSet = true; m_backupName = value; } 221 222 /** 223 * <p>Name of the specified backup.</p> 224 */ SetBackupName(Aws::String && value)225 inline void SetBackupName(Aws::String&& value) { m_backupNameHasBeenSet = true; m_backupName = std::move(value); } 226 227 /** 228 * <p>Name of the specified backup.</p> 229 */ SetBackupName(const char * value)230 inline void SetBackupName(const char* value) { m_backupNameHasBeenSet = true; m_backupName.assign(value); } 231 232 /** 233 * <p>Name of the specified backup.</p> 234 */ WithBackupName(const Aws::String & value)235 inline BackupSummary& WithBackupName(const Aws::String& value) { SetBackupName(value); return *this;} 236 237 /** 238 * <p>Name of the specified backup.</p> 239 */ WithBackupName(Aws::String && value)240 inline BackupSummary& WithBackupName(Aws::String&& value) { SetBackupName(std::move(value)); return *this;} 241 242 /** 243 * <p>Name of the specified backup.</p> 244 */ WithBackupName(const char * value)245 inline BackupSummary& WithBackupName(const char* value) { SetBackupName(value); return *this;} 246 247 248 /** 249 * <p>Time at which the backup was created.</p> 250 */ GetBackupCreationDateTime()251 inline const Aws::Utils::DateTime& GetBackupCreationDateTime() const{ return m_backupCreationDateTime; } 252 253 /** 254 * <p>Time at which the backup was created.</p> 255 */ BackupCreationDateTimeHasBeenSet()256 inline bool BackupCreationDateTimeHasBeenSet() const { return m_backupCreationDateTimeHasBeenSet; } 257 258 /** 259 * <p>Time at which the backup was created.</p> 260 */ SetBackupCreationDateTime(const Aws::Utils::DateTime & value)261 inline void SetBackupCreationDateTime(const Aws::Utils::DateTime& value) { m_backupCreationDateTimeHasBeenSet = true; m_backupCreationDateTime = value; } 262 263 /** 264 * <p>Time at which the backup was created.</p> 265 */ SetBackupCreationDateTime(Aws::Utils::DateTime && value)266 inline void SetBackupCreationDateTime(Aws::Utils::DateTime&& value) { m_backupCreationDateTimeHasBeenSet = true; m_backupCreationDateTime = std::move(value); } 267 268 /** 269 * <p>Time at which the backup was created.</p> 270 */ WithBackupCreationDateTime(const Aws::Utils::DateTime & value)271 inline BackupSummary& WithBackupCreationDateTime(const Aws::Utils::DateTime& value) { SetBackupCreationDateTime(value); return *this;} 272 273 /** 274 * <p>Time at which the backup was created.</p> 275 */ WithBackupCreationDateTime(Aws::Utils::DateTime && value)276 inline BackupSummary& WithBackupCreationDateTime(Aws::Utils::DateTime&& value) { SetBackupCreationDateTime(std::move(value)); return *this;} 277 278 279 /** 280 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 281 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 282 * its creation.</p> 283 */ GetBackupExpiryDateTime()284 inline const Aws::Utils::DateTime& GetBackupExpiryDateTime() const{ return m_backupExpiryDateTime; } 285 286 /** 287 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 288 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 289 * its creation.</p> 290 */ BackupExpiryDateTimeHasBeenSet()291 inline bool BackupExpiryDateTimeHasBeenSet() const { return m_backupExpiryDateTimeHasBeenSet; } 292 293 /** 294 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 295 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 296 * its creation.</p> 297 */ SetBackupExpiryDateTime(const Aws::Utils::DateTime & value)298 inline void SetBackupExpiryDateTime(const Aws::Utils::DateTime& value) { m_backupExpiryDateTimeHasBeenSet = true; m_backupExpiryDateTime = value; } 299 300 /** 301 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 302 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 303 * its creation.</p> 304 */ SetBackupExpiryDateTime(Aws::Utils::DateTime && value)305 inline void SetBackupExpiryDateTime(Aws::Utils::DateTime&& value) { m_backupExpiryDateTimeHasBeenSet = true; m_backupExpiryDateTime = std::move(value); } 306 307 /** 308 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 309 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 310 * its creation.</p> 311 */ WithBackupExpiryDateTime(const Aws::Utils::DateTime & value)312 inline BackupSummary& WithBackupExpiryDateTime(const Aws::Utils::DateTime& value) { SetBackupExpiryDateTime(value); return *this;} 313 314 /** 315 * <p>Time at which the automatic on-demand backup created by DynamoDB will expire. 316 * This <code>SYSTEM</code> on-demand backup expires automatically 35 days after 317 * its creation.</p> 318 */ WithBackupExpiryDateTime(Aws::Utils::DateTime && value)319 inline BackupSummary& WithBackupExpiryDateTime(Aws::Utils::DateTime&& value) { SetBackupExpiryDateTime(std::move(value)); return *this;} 320 321 322 /** 323 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 324 */ GetBackupStatus()325 inline const BackupStatus& GetBackupStatus() const{ return m_backupStatus; } 326 327 /** 328 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 329 */ BackupStatusHasBeenSet()330 inline bool BackupStatusHasBeenSet() const { return m_backupStatusHasBeenSet; } 331 332 /** 333 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 334 */ SetBackupStatus(const BackupStatus & value)335 inline void SetBackupStatus(const BackupStatus& value) { m_backupStatusHasBeenSet = true; m_backupStatus = value; } 336 337 /** 338 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 339 */ SetBackupStatus(BackupStatus && value)340 inline void SetBackupStatus(BackupStatus&& value) { m_backupStatusHasBeenSet = true; m_backupStatus = std::move(value); } 341 342 /** 343 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 344 */ WithBackupStatus(const BackupStatus & value)345 inline BackupSummary& WithBackupStatus(const BackupStatus& value) { SetBackupStatus(value); return *this;} 346 347 /** 348 * <p>Backup can be in one of the following states: CREATING, ACTIVE, DELETED.</p> 349 */ WithBackupStatus(BackupStatus && value)350 inline BackupSummary& WithBackupStatus(BackupStatus&& value) { SetBackupStatus(std::move(value)); return *this;} 351 352 353 /** 354 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 355 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 356 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 357 * backup is automatically created and is retained for 35 days (at no additional 358 * cost). System backups allow you to restore the deleted table to the state it was 359 * in just before the point of deletion. </p> </li> <li> <p> 360 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 361 * service.</p> </li> </ul> 362 */ GetBackupType()363 inline const BackupType& GetBackupType() const{ return m_backupType; } 364 365 /** 366 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 367 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 368 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 369 * backup is automatically created and is retained for 35 days (at no additional 370 * cost). System backups allow you to restore the deleted table to the state it was 371 * in just before the point of deletion. </p> </li> <li> <p> 372 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 373 * service.</p> </li> </ul> 374 */ BackupTypeHasBeenSet()375 inline bool BackupTypeHasBeenSet() const { return m_backupTypeHasBeenSet; } 376 377 /** 378 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 379 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 380 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 381 * backup is automatically created and is retained for 35 days (at no additional 382 * cost). System backups allow you to restore the deleted table to the state it was 383 * in just before the point of deletion. </p> </li> <li> <p> 384 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 385 * service.</p> </li> </ul> 386 */ SetBackupType(const BackupType & value)387 inline void SetBackupType(const BackupType& value) { m_backupTypeHasBeenSet = true; m_backupType = value; } 388 389 /** 390 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 391 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 392 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 393 * backup is automatically created and is retained for 35 days (at no additional 394 * cost). System backups allow you to restore the deleted table to the state it was 395 * in just before the point of deletion. </p> </li> <li> <p> 396 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 397 * service.</p> </li> </ul> 398 */ SetBackupType(BackupType && value)399 inline void SetBackupType(BackupType&& value) { m_backupTypeHasBeenSet = true; m_backupType = std::move(value); } 400 401 /** 402 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 403 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 404 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 405 * backup is automatically created and is retained for 35 days (at no additional 406 * cost). System backups allow you to restore the deleted table to the state it was 407 * in just before the point of deletion. </p> </li> <li> <p> 408 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 409 * service.</p> </li> </ul> 410 */ WithBackupType(const BackupType & value)411 inline BackupSummary& WithBackupType(const BackupType& value) { SetBackupType(value); return *this;} 412 413 /** 414 * <p>BackupType:</p> <ul> <li> <p> <code>USER</code> - You create and manage these 415 * using the on-demand backup feature.</p> </li> <li> <p> <code>SYSTEM</code> - If 416 * you delete a table with point-in-time recovery enabled, a <code>SYSTEM</code> 417 * backup is automatically created and is retained for 35 days (at no additional 418 * cost). System backups allow you to restore the deleted table to the state it was 419 * in just before the point of deletion. </p> </li> <li> <p> 420 * <code>AWS_BACKUP</code> - On-demand backup created by you from AWS Backup 421 * service.</p> </li> </ul> 422 */ WithBackupType(BackupType && value)423 inline BackupSummary& WithBackupType(BackupType&& value) { SetBackupType(std::move(value)); return *this;} 424 425 426 /** 427 * <p>Size of the backup in bytes.</p> 428 */ GetBackupSizeBytes()429 inline long long GetBackupSizeBytes() const{ return m_backupSizeBytes; } 430 431 /** 432 * <p>Size of the backup in bytes.</p> 433 */ BackupSizeBytesHasBeenSet()434 inline bool BackupSizeBytesHasBeenSet() const { return m_backupSizeBytesHasBeenSet; } 435 436 /** 437 * <p>Size of the backup in bytes.</p> 438 */ SetBackupSizeBytes(long long value)439 inline void SetBackupSizeBytes(long long value) { m_backupSizeBytesHasBeenSet = true; m_backupSizeBytes = value; } 440 441 /** 442 * <p>Size of the backup in bytes.</p> 443 */ WithBackupSizeBytes(long long value)444 inline BackupSummary& WithBackupSizeBytes(long long value) { SetBackupSizeBytes(value); return *this;} 445 446 private: 447 448 Aws::String m_tableName; 449 bool m_tableNameHasBeenSet; 450 451 Aws::String m_tableId; 452 bool m_tableIdHasBeenSet; 453 454 Aws::String m_tableArn; 455 bool m_tableArnHasBeenSet; 456 457 Aws::String m_backupArn; 458 bool m_backupArnHasBeenSet; 459 460 Aws::String m_backupName; 461 bool m_backupNameHasBeenSet; 462 463 Aws::Utils::DateTime m_backupCreationDateTime; 464 bool m_backupCreationDateTimeHasBeenSet; 465 466 Aws::Utils::DateTime m_backupExpiryDateTime; 467 bool m_backupExpiryDateTimeHasBeenSet; 468 469 BackupStatus m_backupStatus; 470 bool m_backupStatusHasBeenSet; 471 472 BackupType m_backupType; 473 bool m_backupTypeHasBeenSet; 474 475 long long m_backupSizeBytes; 476 bool m_backupSizeBytesHasBeenSet; 477 }; 478 479 } // namespace Model 480 } // namespace DynamoDB 481 } // namespace Aws 482