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/workmail/WorkMail_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/workmail/model/MailboxExportJobState.h> 10 #include <aws/core/utils/DateTime.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 template<typename RESULT_TYPE> 16 class AmazonWebServiceResult; 17 18 namespace Utils 19 { 20 namespace Json 21 { 22 class JsonValue; 23 } // namespace Json 24 } // namespace Utils 25 namespace WorkMail 26 { 27 namespace Model 28 { 29 class AWS_WORKMAIL_API DescribeMailboxExportJobResult 30 { 31 public: 32 DescribeMailboxExportJobResult(); 33 DescribeMailboxExportJobResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 34 DescribeMailboxExportJobResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result); 35 36 37 /** 38 * <p>The identifier of the user or resource associated with the mailbox.</p> 39 */ GetEntityId()40 inline const Aws::String& GetEntityId() const{ return m_entityId; } 41 42 /** 43 * <p>The identifier of the user or resource associated with the mailbox.</p> 44 */ SetEntityId(const Aws::String & value)45 inline void SetEntityId(const Aws::String& value) { m_entityId = value; } 46 47 /** 48 * <p>The identifier of the user or resource associated with the mailbox.</p> 49 */ SetEntityId(Aws::String && value)50 inline void SetEntityId(Aws::String&& value) { m_entityId = std::move(value); } 51 52 /** 53 * <p>The identifier of the user or resource associated with the mailbox.</p> 54 */ SetEntityId(const char * value)55 inline void SetEntityId(const char* value) { m_entityId.assign(value); } 56 57 /** 58 * <p>The identifier of the user or resource associated with the mailbox.</p> 59 */ WithEntityId(const Aws::String & value)60 inline DescribeMailboxExportJobResult& WithEntityId(const Aws::String& value) { SetEntityId(value); return *this;} 61 62 /** 63 * <p>The identifier of the user or resource associated with the mailbox.</p> 64 */ WithEntityId(Aws::String && value)65 inline DescribeMailboxExportJobResult& WithEntityId(Aws::String&& value) { SetEntityId(std::move(value)); return *this;} 66 67 /** 68 * <p>The identifier of the user or resource associated with the mailbox.</p> 69 */ WithEntityId(const char * value)70 inline DescribeMailboxExportJobResult& WithEntityId(const char* value) { SetEntityId(value); return *this;} 71 72 73 /** 74 * <p>The mailbox export job description.</p> 75 */ GetDescription()76 inline const Aws::String& GetDescription() const{ return m_description; } 77 78 /** 79 * <p>The mailbox export job description.</p> 80 */ SetDescription(const Aws::String & value)81 inline void SetDescription(const Aws::String& value) { m_description = value; } 82 83 /** 84 * <p>The mailbox export job description.</p> 85 */ SetDescription(Aws::String && value)86 inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } 87 88 /** 89 * <p>The mailbox export job description.</p> 90 */ SetDescription(const char * value)91 inline void SetDescription(const char* value) { m_description.assign(value); } 92 93 /** 94 * <p>The mailbox export job description.</p> 95 */ WithDescription(const Aws::String & value)96 inline DescribeMailboxExportJobResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} 97 98 /** 99 * <p>The mailbox export job description.</p> 100 */ WithDescription(Aws::String && value)101 inline DescribeMailboxExportJobResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} 102 103 /** 104 * <p>The mailbox export job description.</p> 105 */ WithDescription(const char * value)106 inline DescribeMailboxExportJobResult& WithDescription(const char* value) { SetDescription(value); return *this;} 107 108 109 /** 110 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 111 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 112 */ GetRoleArn()113 inline const Aws::String& GetRoleArn() const{ return m_roleArn; } 114 115 /** 116 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 117 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 118 */ SetRoleArn(const Aws::String & value)119 inline void SetRoleArn(const Aws::String& value) { m_roleArn = value; } 120 121 /** 122 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 123 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 124 */ SetRoleArn(Aws::String && value)125 inline void SetRoleArn(Aws::String&& value) { m_roleArn = std::move(value); } 126 127 /** 128 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 129 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 130 */ SetRoleArn(const char * value)131 inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } 132 133 /** 134 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 135 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 136 */ WithRoleArn(const Aws::String & value)137 inline DescribeMailboxExportJobResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} 138 139 /** 140 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 141 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 142 */ WithRoleArn(Aws::String && value)143 inline DescribeMailboxExportJobResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} 144 145 /** 146 * <p>The ARN of the AWS Identity and Access Management (IAM) role that grants 147 * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.</p> 148 */ WithRoleArn(const char * value)149 inline DescribeMailboxExportJobResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} 150 151 152 /** 153 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 154 * (AWS KMS) key that encrypts the exported mailbox content.</p> 155 */ GetKmsKeyArn()156 inline const Aws::String& GetKmsKeyArn() const{ return m_kmsKeyArn; } 157 158 /** 159 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 160 * (AWS KMS) key that encrypts the exported mailbox content.</p> 161 */ SetKmsKeyArn(const Aws::String & value)162 inline void SetKmsKeyArn(const Aws::String& value) { m_kmsKeyArn = value; } 163 164 /** 165 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 166 * (AWS KMS) key that encrypts the exported mailbox content.</p> 167 */ SetKmsKeyArn(Aws::String && value)168 inline void SetKmsKeyArn(Aws::String&& value) { m_kmsKeyArn = std::move(value); } 169 170 /** 171 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 172 * (AWS KMS) key that encrypts the exported mailbox content.</p> 173 */ SetKmsKeyArn(const char * value)174 inline void SetKmsKeyArn(const char* value) { m_kmsKeyArn.assign(value); } 175 176 /** 177 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 178 * (AWS KMS) key that encrypts the exported mailbox content.</p> 179 */ WithKmsKeyArn(const Aws::String & value)180 inline DescribeMailboxExportJobResult& WithKmsKeyArn(const Aws::String& value) { SetKmsKeyArn(value); return *this;} 181 182 /** 183 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 184 * (AWS KMS) key that encrypts the exported mailbox content.</p> 185 */ WithKmsKeyArn(Aws::String && value)186 inline DescribeMailboxExportJobResult& WithKmsKeyArn(Aws::String&& value) { SetKmsKeyArn(std::move(value)); return *this;} 187 188 /** 189 * <p>The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service 190 * (AWS KMS) key that encrypts the exported mailbox content.</p> 191 */ WithKmsKeyArn(const char * value)192 inline DescribeMailboxExportJobResult& WithKmsKeyArn(const char* value) { SetKmsKeyArn(value); return *this;} 193 194 195 /** 196 * <p>The name of the S3 bucket.</p> 197 */ GetS3BucketName()198 inline const Aws::String& GetS3BucketName() const{ return m_s3BucketName; } 199 200 /** 201 * <p>The name of the S3 bucket.</p> 202 */ SetS3BucketName(const Aws::String & value)203 inline void SetS3BucketName(const Aws::String& value) { m_s3BucketName = value; } 204 205 /** 206 * <p>The name of the S3 bucket.</p> 207 */ SetS3BucketName(Aws::String && value)208 inline void SetS3BucketName(Aws::String&& value) { m_s3BucketName = std::move(value); } 209 210 /** 211 * <p>The name of the S3 bucket.</p> 212 */ SetS3BucketName(const char * value)213 inline void SetS3BucketName(const char* value) { m_s3BucketName.assign(value); } 214 215 /** 216 * <p>The name of the S3 bucket.</p> 217 */ WithS3BucketName(const Aws::String & value)218 inline DescribeMailboxExportJobResult& WithS3BucketName(const Aws::String& value) { SetS3BucketName(value); return *this;} 219 220 /** 221 * <p>The name of the S3 bucket.</p> 222 */ WithS3BucketName(Aws::String && value)223 inline DescribeMailboxExportJobResult& WithS3BucketName(Aws::String&& value) { SetS3BucketName(std::move(value)); return *this;} 224 225 /** 226 * <p>The name of the S3 bucket.</p> 227 */ WithS3BucketName(const char * value)228 inline DescribeMailboxExportJobResult& WithS3BucketName(const char* value) { SetS3BucketName(value); return *this;} 229 230 231 /** 232 * <p>The S3 bucket prefix.</p> 233 */ GetS3Prefix()234 inline const Aws::String& GetS3Prefix() const{ return m_s3Prefix; } 235 236 /** 237 * <p>The S3 bucket prefix.</p> 238 */ SetS3Prefix(const Aws::String & value)239 inline void SetS3Prefix(const Aws::String& value) { m_s3Prefix = value; } 240 241 /** 242 * <p>The S3 bucket prefix.</p> 243 */ SetS3Prefix(Aws::String && value)244 inline void SetS3Prefix(Aws::String&& value) { m_s3Prefix = std::move(value); } 245 246 /** 247 * <p>The S3 bucket prefix.</p> 248 */ SetS3Prefix(const char * value)249 inline void SetS3Prefix(const char* value) { m_s3Prefix.assign(value); } 250 251 /** 252 * <p>The S3 bucket prefix.</p> 253 */ WithS3Prefix(const Aws::String & value)254 inline DescribeMailboxExportJobResult& WithS3Prefix(const Aws::String& value) { SetS3Prefix(value); return *this;} 255 256 /** 257 * <p>The S3 bucket prefix.</p> 258 */ WithS3Prefix(Aws::String && value)259 inline DescribeMailboxExportJobResult& WithS3Prefix(Aws::String&& value) { SetS3Prefix(std::move(value)); return *this;} 260 261 /** 262 * <p>The S3 bucket prefix.</p> 263 */ WithS3Prefix(const char * value)264 inline DescribeMailboxExportJobResult& WithS3Prefix(const char* value) { SetS3Prefix(value); return *this;} 265 266 267 /** 268 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 269 * to.</p> 270 */ GetS3Path()271 inline const Aws::String& GetS3Path() const{ return m_s3Path; } 272 273 /** 274 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 275 * to.</p> 276 */ SetS3Path(const Aws::String & value)277 inline void SetS3Path(const Aws::String& value) { m_s3Path = value; } 278 279 /** 280 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 281 * to.</p> 282 */ SetS3Path(Aws::String && value)283 inline void SetS3Path(Aws::String&& value) { m_s3Path = std::move(value); } 284 285 /** 286 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 287 * to.</p> 288 */ SetS3Path(const char * value)289 inline void SetS3Path(const char* value) { m_s3Path.assign(value); } 290 291 /** 292 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 293 * to.</p> 294 */ WithS3Path(const Aws::String & value)295 inline DescribeMailboxExportJobResult& WithS3Path(const Aws::String& value) { SetS3Path(value); return *this;} 296 297 /** 298 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 299 * to.</p> 300 */ WithS3Path(Aws::String && value)301 inline DescribeMailboxExportJobResult& WithS3Path(Aws::String&& value) { SetS3Path(std::move(value)); return *this;} 302 303 /** 304 * <p>The path to the S3 bucket and file that the mailbox export job is exporting 305 * to.</p> 306 */ WithS3Path(const char * value)307 inline DescribeMailboxExportJobResult& WithS3Path(const char* value) { SetS3Path(value); return *this;} 308 309 310 /** 311 * <p>The estimated progress of the mailbox export job, in percentage points.</p> 312 */ GetEstimatedProgress()313 inline int GetEstimatedProgress() const{ return m_estimatedProgress; } 314 315 /** 316 * <p>The estimated progress of the mailbox export job, in percentage points.</p> 317 */ SetEstimatedProgress(int value)318 inline void SetEstimatedProgress(int value) { m_estimatedProgress = value; } 319 320 /** 321 * <p>The estimated progress of the mailbox export job, in percentage points.</p> 322 */ WithEstimatedProgress(int value)323 inline DescribeMailboxExportJobResult& WithEstimatedProgress(int value) { SetEstimatedProgress(value); return *this;} 324 325 326 /** 327 * <p>The state of the mailbox export job.</p> 328 */ GetState()329 inline const MailboxExportJobState& GetState() const{ return m_state; } 330 331 /** 332 * <p>The state of the mailbox export job.</p> 333 */ SetState(const MailboxExportJobState & value)334 inline void SetState(const MailboxExportJobState& value) { m_state = value; } 335 336 /** 337 * <p>The state of the mailbox export job.</p> 338 */ SetState(MailboxExportJobState && value)339 inline void SetState(MailboxExportJobState&& value) { m_state = std::move(value); } 340 341 /** 342 * <p>The state of the mailbox export job.</p> 343 */ WithState(const MailboxExportJobState & value)344 inline DescribeMailboxExportJobResult& WithState(const MailboxExportJobState& value) { SetState(value); return *this;} 345 346 /** 347 * <p>The state of the mailbox export job.</p> 348 */ WithState(MailboxExportJobState && value)349 inline DescribeMailboxExportJobResult& WithState(MailboxExportJobState&& value) { SetState(std::move(value)); return *this;} 350 351 352 /** 353 * <p>Error information for failed mailbox export jobs.</p> 354 */ GetErrorInfo()355 inline const Aws::String& GetErrorInfo() const{ return m_errorInfo; } 356 357 /** 358 * <p>Error information for failed mailbox export jobs.</p> 359 */ SetErrorInfo(const Aws::String & value)360 inline void SetErrorInfo(const Aws::String& value) { m_errorInfo = value; } 361 362 /** 363 * <p>Error information for failed mailbox export jobs.</p> 364 */ SetErrorInfo(Aws::String && value)365 inline void SetErrorInfo(Aws::String&& value) { m_errorInfo = std::move(value); } 366 367 /** 368 * <p>Error information for failed mailbox export jobs.</p> 369 */ SetErrorInfo(const char * value)370 inline void SetErrorInfo(const char* value) { m_errorInfo.assign(value); } 371 372 /** 373 * <p>Error information for failed mailbox export jobs.</p> 374 */ WithErrorInfo(const Aws::String & value)375 inline DescribeMailboxExportJobResult& WithErrorInfo(const Aws::String& value) { SetErrorInfo(value); return *this;} 376 377 /** 378 * <p>Error information for failed mailbox export jobs.</p> 379 */ WithErrorInfo(Aws::String && value)380 inline DescribeMailboxExportJobResult& WithErrorInfo(Aws::String&& value) { SetErrorInfo(std::move(value)); return *this;} 381 382 /** 383 * <p>Error information for failed mailbox export jobs.</p> 384 */ WithErrorInfo(const char * value)385 inline DescribeMailboxExportJobResult& WithErrorInfo(const char* value) { SetErrorInfo(value); return *this;} 386 387 388 /** 389 * <p>The mailbox export job start timestamp.</p> 390 */ GetStartTime()391 inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } 392 393 /** 394 * <p>The mailbox export job start timestamp.</p> 395 */ SetStartTime(const Aws::Utils::DateTime & value)396 inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTime = value; } 397 398 /** 399 * <p>The mailbox export job start timestamp.</p> 400 */ SetStartTime(Aws::Utils::DateTime && value)401 inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTime = std::move(value); } 402 403 /** 404 * <p>The mailbox export job start timestamp.</p> 405 */ WithStartTime(const Aws::Utils::DateTime & value)406 inline DescribeMailboxExportJobResult& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} 407 408 /** 409 * <p>The mailbox export job start timestamp.</p> 410 */ WithStartTime(Aws::Utils::DateTime && value)411 inline DescribeMailboxExportJobResult& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} 412 413 414 /** 415 * <p>The mailbox export job end timestamp.</p> 416 */ GetEndTime()417 inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } 418 419 /** 420 * <p>The mailbox export job end timestamp.</p> 421 */ SetEndTime(const Aws::Utils::DateTime & value)422 inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTime = value; } 423 424 /** 425 * <p>The mailbox export job end timestamp.</p> 426 */ SetEndTime(Aws::Utils::DateTime && value)427 inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTime = std::move(value); } 428 429 /** 430 * <p>The mailbox export job end timestamp.</p> 431 */ WithEndTime(const Aws::Utils::DateTime & value)432 inline DescribeMailboxExportJobResult& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} 433 434 /** 435 * <p>The mailbox export job end timestamp.</p> 436 */ WithEndTime(Aws::Utils::DateTime && value)437 inline DescribeMailboxExportJobResult& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} 438 439 private: 440 441 Aws::String m_entityId; 442 443 Aws::String m_description; 444 445 Aws::String m_roleArn; 446 447 Aws::String m_kmsKeyArn; 448 449 Aws::String m_s3BucketName; 450 451 Aws::String m_s3Prefix; 452 453 Aws::String m_s3Path; 454 455 int m_estimatedProgress; 456 457 MailboxExportJobState m_state; 458 459 Aws::String m_errorInfo; 460 461 Aws::Utils::DateTime m_startTime; 462 463 Aws::Utils::DateTime m_endTime; 464 }; 465 466 } // namespace Model 467 } // namespace WorkMail 468 } // namespace Aws 469