/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the workmail-2017-10-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.WorkMail.Model
{
///
/// The details of a mailbox export job, including the user or resource ID associated
/// with the mailbox and the S3 bucket that the mailbox contents are exported to.
///
public partial class MailboxExportJob
{
private string _description;
private DateTime? _endTime;
private string _entityId;
private int? _estimatedProgress;
private string _jobId;
private string _s3BucketName;
private string _s3Path;
private DateTime? _startTime;
private MailboxExportJobState _state;
///
/// Gets and sets the property Description.
///
/// The mailbox export job description.
///
///
[AWSProperty(Min=0, Max=1023)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property EndTime.
///
/// The mailbox export job end timestamp.
///
///
public DateTime EndTime
{
get { return this._endTime.GetValueOrDefault(); }
set { this._endTime = value; }
}
// Check to see if EndTime property is set
internal bool IsSetEndTime()
{
return this._endTime.HasValue;
}
///
/// Gets and sets the property EntityId.
///
/// The identifier of the user or resource associated with the mailbox.
///
///
[AWSProperty(Min=12, Max=256)]
public string EntityId
{
get { return this._entityId; }
set { this._entityId = value; }
}
// Check to see if EntityId property is set
internal bool IsSetEntityId()
{
return this._entityId != null;
}
///
/// Gets and sets the property EstimatedProgress.
///
/// The estimated progress of the mailbox export job, in percentage points.
///
///
[AWSProperty(Min=0, Max=100)]
public int EstimatedProgress
{
get { return this._estimatedProgress.GetValueOrDefault(); }
set { this._estimatedProgress = value; }
}
// Check to see if EstimatedProgress property is set
internal bool IsSetEstimatedProgress()
{
return this._estimatedProgress.HasValue;
}
///
/// Gets and sets the property JobId.
///
/// The identifier of the mailbox export job.
///
///
[AWSProperty(Min=1, Max=63)]
public string JobId
{
get { return this._jobId; }
set { this._jobId = value; }
}
// Check to see if JobId property is set
internal bool IsSetJobId()
{
return this._jobId != null;
}
///
/// Gets and sets the property S3BucketName.
///
/// The name of the S3 bucket.
///
///
[AWSProperty(Min=1, Max=63)]
public string S3BucketName
{
get { return this._s3BucketName; }
set { this._s3BucketName = value; }
}
// Check to see if S3BucketName property is set
internal bool IsSetS3BucketName()
{
return this._s3BucketName != null;
}
///
/// Gets and sets the property S3Path.
///
/// The path to the S3 bucket and file that the mailbox export job exports to.
///
///
[AWSProperty(Min=1, Max=1023)]
public string S3Path
{
get { return this._s3Path; }
set { this._s3Path = value; }
}
// Check to see if S3Path property is set
internal bool IsSetS3Path()
{
return this._s3Path != null;
}
///
/// Gets and sets the property StartTime.
///
/// The mailbox export job start timestamp.
///
///
public DateTime StartTime
{
get { return this._startTime.GetValueOrDefault(); }
set { this._startTime = value; }
}
// Check to see if StartTime property is set
internal bool IsSetStartTime()
{
return this._startTime.HasValue;
}
///
/// Gets and sets the property State.
///
/// The state of the mailbox export job.
///
///
public MailboxExportJobState State
{
get { return this._state; }
set { this._state = value; }
}
// Check to see if State property is set
internal bool IsSetState()
{
return this._state != null;
}
}
}