/*
* 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 ec2-2016-11-15.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.EC2.Model
{
///
/// Provides information about a snapshot's storage tier.
///
public partial class SnapshotTierStatus
{
private DateTime? _archivalCompleteTime;
private TieringOperationStatus _lastTieringOperationStatus;
private string _lastTieringOperationStatusDetail;
private int? _lastTieringProgress;
private DateTime? _lastTieringStartTime;
private string _ownerId;
private DateTime? _restoreExpiryTime;
private string _snapshotId;
private SnapshotState _status;
private StorageTier _storageTier;
private List _tags = new List();
private string _volumeId;
///
/// Gets and sets the property ArchivalCompleteTime.
///
/// The date and time when the last archive process was completed.
///
///
public DateTime ArchivalCompleteTime
{
get { return this._archivalCompleteTime.GetValueOrDefault(); }
set { this._archivalCompleteTime = value; }
}
// Check to see if ArchivalCompleteTime property is set
internal bool IsSetArchivalCompleteTime()
{
return this._archivalCompleteTime.HasValue;
}
///
/// Gets and sets the property LastTieringOperationStatus.
///
/// The status of the last archive or restore process.
///
///
public TieringOperationStatus LastTieringOperationStatus
{
get { return this._lastTieringOperationStatus; }
set { this._lastTieringOperationStatus = value; }
}
// Check to see if LastTieringOperationStatus property is set
internal bool IsSetLastTieringOperationStatus()
{
return this._lastTieringOperationStatus != null;
}
///
/// Gets and sets the property LastTieringOperationStatusDetail.
///
/// A message describing the status of the last archive or restore process.
///
///
public string LastTieringOperationStatusDetail
{
get { return this._lastTieringOperationStatusDetail; }
set { this._lastTieringOperationStatusDetail = value; }
}
// Check to see if LastTieringOperationStatusDetail property is set
internal bool IsSetLastTieringOperationStatusDetail()
{
return this._lastTieringOperationStatusDetail != null;
}
///
/// Gets and sets the property LastTieringProgress.
///
/// The progress of the last archive or restore process, as a percentage.
///
///
public int LastTieringProgress
{
get { return this._lastTieringProgress.GetValueOrDefault(); }
set { this._lastTieringProgress = value; }
}
// Check to see if LastTieringProgress property is set
internal bool IsSetLastTieringProgress()
{
return this._lastTieringProgress.HasValue;
}
///
/// Gets and sets the property LastTieringStartTime.
///
/// The date and time when the last archive or restore process was started.
///
///
public DateTime LastTieringStartTime
{
get { return this._lastTieringStartTime.GetValueOrDefault(); }
set { this._lastTieringStartTime = value; }
}
// Check to see if LastTieringStartTime property is set
internal bool IsSetLastTieringStartTime()
{
return this._lastTieringStartTime.HasValue;
}
///
/// Gets and sets the property OwnerId.
///
/// The ID of the Amazon Web Services account that owns the snapshot.
///
///
public string OwnerId
{
get { return this._ownerId; }
set { this._ownerId = value; }
}
// Check to see if OwnerId property is set
internal bool IsSetOwnerId()
{
return this._ownerId != null;
}
///
/// Gets and sets the property RestoreExpiryTime.
///
/// Only for archived snapshots that are temporarily restored. Indicates the date and
/// time when a temporarily restored snapshot will be automatically re-archived.
///
///
public DateTime RestoreExpiryTime
{
get { return this._restoreExpiryTime.GetValueOrDefault(); }
set { this._restoreExpiryTime = value; }
}
// Check to see if RestoreExpiryTime property is set
internal bool IsSetRestoreExpiryTime()
{
return this._restoreExpiryTime.HasValue;
}
///
/// Gets and sets the property SnapshotId.
///
/// The ID of the snapshot.
///
///
public string SnapshotId
{
get { return this._snapshotId; }
set { this._snapshotId = value; }
}
// Check to see if SnapshotId property is set
internal bool IsSetSnapshotId()
{
return this._snapshotId != null;
}
///
/// Gets and sets the property Status.
///
/// The state of the snapshot.
///
///
public SnapshotState Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property StorageTier.
///
/// The storage tier in which the snapshot is stored. standard
indicates
/// that the snapshot is stored in the standard snapshot storage tier and that it is ready
/// for use. archive
indicates that the snapshot is currently archived and
/// that it must be restored before it can be used.
///
///
public StorageTier StorageTier
{
get { return this._storageTier; }
set { this._storageTier = value; }
}
// Check to see if StorageTier property is set
internal bool IsSetStorageTier()
{
return this._storageTier != null;
}
///
/// Gets and sets the property Tags.
///
/// The tags that are assigned to the snapshot.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Gets and sets the property VolumeId.
///
/// The ID of the volume from which the snapshot was created.
///
///
public string VolumeId
{
get { return this._volumeId; }
set { this._volumeId = value; }
}
// Check to see if VolumeId property is set
internal bool IsSetVolumeId()
{
return this._volumeId != null;
}
}
}