/*
* 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 kms-2014-11-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.KeyManagementService.Model
{
///
/// This is the response object from the ScheduleKeyDeletion operation.
///
public partial class ScheduleKeyDeletionResponse : AmazonWebServiceResponse
{
private DateTime? _deletionDate;
private string _keyId;
private KeyState _keyState;
private int? _pendingWindowInDays;
///
/// Gets and sets the property DeletionDate.
///
/// The date and time after which KMS deletes the KMS key.
///
///
///
/// If the KMS key is a multi-Region primary key with replica keys, this field does not
/// appear. The deletion date for the primary key isn't known until its last replica key
/// is deleted.
///
///
public DateTime DeletionDate
{
get { return this._deletionDate.GetValueOrDefault(); }
set { this._deletionDate = value; }
}
// Check to see if DeletionDate property is set
internal bool IsSetDeletionDate()
{
return this._deletionDate.HasValue;
}
///
/// Gets and sets the property KeyId.
///
/// The Amazon Resource Name (key
/// ARN) of the KMS key whose deletion is scheduled.
///
///
[AWSProperty(Min=1, Max=2048)]
public string KeyId
{
get { return this._keyId; }
set { this._keyId = value; }
}
// Check to see if KeyId property is set
internal bool IsSetKeyId()
{
return this._keyId != null;
}
///
/// Gets and sets the property KeyState.
///
/// The current status of the KMS key.
///
///
///
/// For more information about how key state affects the use of a KMS key, see Key
/// states of KMS keys in the Key Management Service Developer Guide.
///
///
public KeyState KeyState
{
get { return this._keyState; }
set { this._keyState = value; }
}
// Check to see if KeyState property is set
internal bool IsSetKeyState()
{
return this._keyState != null;
}
///
/// Gets and sets the property PendingWindowInDays.
///
/// The waiting period before the KMS key is deleted.
///
///
///
/// If the KMS key is a multi-Region primary key with replicas, the waiting period begins
/// when the last of its replica keys is deleted. Otherwise, the waiting period begins
/// immediately.
///
///
[AWSProperty(Min=1, Max=365)]
public int PendingWindowInDays
{
get { return this._pendingWindowInDays.GetValueOrDefault(); }
set { this._pendingWindowInDays = value; }
}
// Check to see if PendingWindowInDays property is set
internal bool IsSetPendingWindowInDays()
{
return this._pendingWindowInDays.HasValue;
}
}
}