/*
* 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 storagegateway-2013-06-30.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.StorageGateway.Model
{
///
/// Represents a virtual tape that is archived in the virtual tape shelf (VTS).
///
public partial class TapeArchive
{
private DateTime? _completionTime;
private string _kmsKey;
private DateTime? _poolEntryDate;
private string _poolId;
private DateTime? _retentionStartDate;
private string _retrievedTo;
private string _tapeARN;
private string _tapeBarcode;
private DateTime? _tapeCreatedDate;
private long? _tapeSizeInBytes;
private string _tapeStatus;
private long? _tapeUsedInBytes;
private bool? _worm;
///
/// Gets and sets the property CompletionTime.
///
/// The time that the archiving of the virtual tape was completed.
///
///
///
/// The default timestamp format is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.
///
///
public DateTime CompletionTime
{
get { return this._completionTime.GetValueOrDefault(); }
set { this._completionTime = value; }
}
// Check to see if CompletionTime property is set
internal bool IsSetCompletionTime()
{
return this._completionTime.HasValue;
}
///
/// Gets and sets the property KMSKey.
///
[AWSProperty(Min=7, Max=2048)]
public string KMSKey
{
get { return this._kmsKey; }
set { this._kmsKey = value; }
}
// Check to see if KMSKey property is set
internal bool IsSetKMSKey()
{
return this._kmsKey != null;
}
///
/// Gets and sets the property PoolEntryDate.
///
/// The time that the tape entered the custom tape pool.
///
///
///
/// The default timestamp format is in the ISO8601 extended YYYY-MM-DD'T'HH:MM:SS'Z' format.
///
///
public DateTime PoolEntryDate
{
get { return this._poolEntryDate.GetValueOrDefault(); }
set { this._poolEntryDate = value; }
}
// Check to see if PoolEntryDate property is set
internal bool IsSetPoolEntryDate()
{
return this._poolEntryDate.HasValue;
}
///
/// Gets and sets the property PoolId.
///
/// The ID of the pool that was used to archive the tape. The tapes in this pool are archived
/// in the S3 storage class that is associated with the pool.
///
///
[AWSProperty(Min=1, Max=100)]
public string PoolId
{
get { return this._poolId; }
set { this._poolId = value; }
}
// Check to see if PoolId property is set
internal bool IsSetPoolId()
{
return this._poolId != null;
}
///
/// Gets and sets the property RetentionStartDate.
///
/// If the archived tape is subject to tape retention lock, the date that the archived
/// tape started being retained.
///
///
public DateTime RetentionStartDate
{
get { return this._retentionStartDate.GetValueOrDefault(); }
set { this._retentionStartDate = value; }
}
// Check to see if RetentionStartDate property is set
internal bool IsSetRetentionStartDate()
{
return this._retentionStartDate.HasValue;
}
///
/// Gets and sets the property RetrievedTo.
///
/// The Amazon Resource Name (ARN) of the tape gateway that the virtual tape is being
/// retrieved to.
///
///
///
/// The virtual tape is retrieved from the virtual tape shelf (VTS).
///
///
[AWSProperty(Min=50, Max=500)]
public string RetrievedTo
{
get { return this._retrievedTo; }
set { this._retrievedTo = value; }
}
// Check to see if RetrievedTo property is set
internal bool IsSetRetrievedTo()
{
return this._retrievedTo != null;
}
///
/// Gets and sets the property TapeARN.
///
/// The Amazon Resource Name (ARN) of an archived virtual tape.
///
///
[AWSProperty(Min=50, Max=500)]
public string TapeARN
{
get { return this._tapeARN; }
set { this._tapeARN = value; }
}
// Check to see if TapeARN property is set
internal bool IsSetTapeARN()
{
return this._tapeARN != null;
}
///
/// Gets and sets the property TapeBarcode.
///
/// The barcode that identifies the archived virtual tape.
///
///
[AWSProperty(Min=5, Max=16)]
public string TapeBarcode
{
get { return this._tapeBarcode; }
set { this._tapeBarcode = value; }
}
// Check to see if TapeBarcode property is set
internal bool IsSetTapeBarcode()
{
return this._tapeBarcode != null;
}
///
/// Gets and sets the property TapeCreatedDate.
///
/// The date the virtual tape was created.
///
///
public DateTime TapeCreatedDate
{
get { return this._tapeCreatedDate.GetValueOrDefault(); }
set { this._tapeCreatedDate = value; }
}
// Check to see if TapeCreatedDate property is set
internal bool IsSetTapeCreatedDate()
{
return this._tapeCreatedDate.HasValue;
}
///
/// Gets and sets the property TapeSizeInBytes.
///
/// The size, in bytes, of the archived virtual tape.
///
///
public long TapeSizeInBytes
{
get { return this._tapeSizeInBytes.GetValueOrDefault(); }
set { this._tapeSizeInBytes = value; }
}
// Check to see if TapeSizeInBytes property is set
internal bool IsSetTapeSizeInBytes()
{
return this._tapeSizeInBytes.HasValue;
}
///
/// Gets and sets the property TapeStatus.
///
/// The current state of the archived virtual tape.
///
///
public string TapeStatus
{
get { return this._tapeStatus; }
set { this._tapeStatus = value; }
}
// Check to see if TapeStatus property is set
internal bool IsSetTapeStatus()
{
return this._tapeStatus != null;
}
///
/// Gets and sets the property TapeUsedInBytes.
///
/// The size, in bytes, of data stored on the virtual tape.
///
///
///
/// This value is not available for tapes created prior to May 13, 2015.
///
///
///
public long TapeUsedInBytes
{
get { return this._tapeUsedInBytes.GetValueOrDefault(); }
set { this._tapeUsedInBytes = value; }
}
// Check to see if TapeUsedInBytes property is set
internal bool IsSetTapeUsedInBytes()
{
return this._tapeUsedInBytes.HasValue;
}
///
/// Gets and sets the property Worm.
///
/// Set to true
if the archived tape is stored as write-once-read-many (WORM).
///
///
public bool Worm
{
get { return this._worm.GetValueOrDefault(); }
set { this._worm = value; }
}
// Check to see if Worm property is set
internal bool IsSetWorm()
{
return this._worm.HasValue;
}
}
}