/*
* 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 fsx-2018-03-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.FSx.Model
{
///
/// Describes a specific Amazon FSx administrative action for the current Windows, Lustre,
/// or OpenZFS file system.
///
public partial class AdministrativeAction
{
private AdministrativeActionType _administrativeActionType;
private AdministrativeActionFailureDetails _failureDetails;
private int? _progressPercent;
private DateTime? _requestTime;
private Status _status;
private FileSystem _targetFileSystemValues;
private Snapshot _targetSnapshotValues;
private Volume _targetVolumeValues;
///
/// Gets and sets the property AdministrativeActionType.
///
public AdministrativeActionType AdministrativeActionType
{
get { return this._administrativeActionType; }
set { this._administrativeActionType = value; }
}
// Check to see if AdministrativeActionType property is set
internal bool IsSetAdministrativeActionType()
{
return this._administrativeActionType != null;
}
///
/// Gets and sets the property FailureDetails.
///
public AdministrativeActionFailureDetails FailureDetails
{
get { return this._failureDetails; }
set { this._failureDetails = value; }
}
// Check to see if FailureDetails property is set
internal bool IsSetFailureDetails()
{
return this._failureDetails != null;
}
///
/// Gets and sets the property ProgressPercent.
///
/// The percentage-complete status of a STORAGE_OPTIMIZATION
administrative
/// action. Does not apply to any other administrative action type.
///
///
[AWSProperty(Min=0, Max=100)]
public int ProgressPercent
{
get { return this._progressPercent.GetValueOrDefault(); }
set { this._progressPercent = value; }
}
// Check to see if ProgressPercent property is set
internal bool IsSetProgressPercent()
{
return this._progressPercent.HasValue;
}
///
/// Gets and sets the property RequestTime.
///
/// The time that the administrative action request was received.
///
///
public DateTime RequestTime
{
get { return this._requestTime.GetValueOrDefault(); }
set { this._requestTime = value; }
}
// Check to see if RequestTime property is set
internal bool IsSetRequestTime()
{
return this._requestTime.HasValue;
}
///
/// Gets and sets the property Status.
///
/// Describes the status of the administrative action, as follows:
///
/// -
///
///
FAILED
- Amazon FSx failed to process the administrative action successfully.
///
/// -
///
///
IN_PROGRESS
- Amazon FSx is processing the administrative action.
///
/// -
///
///
PENDING
- Amazon FSx is waiting to process the administrative action.
///
/// -
///
///
COMPLETED
- Amazon FSx has finished processing the administrative task.
///
/// -
///
///
UPDATED_OPTIMIZING
- For a storage-capacity increase update, Amazon
/// FSx has updated the file system with the new storage capacity, and is now performing
/// the storage-optimization process.
///
///
///
public Status 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 TargetFileSystemValues.
///
/// Describes the target value for the administration action, provided in the UpdateFileSystem
/// operation. Returned for FILE_SYSTEM_UPDATE
administrative actions.
///
///
public FileSystem TargetFileSystemValues
{
get { return this._targetFileSystemValues; }
set { this._targetFileSystemValues = value; }
}
// Check to see if TargetFileSystemValues property is set
internal bool IsSetTargetFileSystemValues()
{
return this._targetFileSystemValues != null;
}
///
/// Gets and sets the property TargetSnapshotValues.
///
public Snapshot TargetSnapshotValues
{
get { return this._targetSnapshotValues; }
set { this._targetSnapshotValues = value; }
}
// Check to see if TargetSnapshotValues property is set
internal bool IsSetTargetSnapshotValues()
{
return this._targetSnapshotValues != null;
}
///
/// Gets and sets the property TargetVolumeValues.
///
public Volume TargetVolumeValues
{
get { return this._targetVolumeValues; }
set { this._targetVolumeValues = value; }
}
// Check to see if TargetVolumeValues property is set
internal bool IsSetTargetVolumeValues()
{
return this._targetVolumeValues != null;
}
}
}