/*
* 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 rbin-2021-06-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.RecycleBin.Model
{
///
/// This is the response object from the LockRule operation.
///
public partial class LockRuleResponse : AmazonWebServiceResponse
{
private string _description;
private string _identifier;
private LockConfiguration _lockConfiguration;
private LockState _lockState;
private List _resourceTags = new List();
private ResourceType _resourceType;
private RetentionPeriod _retentionPeriod;
private RuleStatus _status;
///
/// Gets and sets the property Description.
///
/// The retention rule description.
///
///
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 Identifier.
///
/// The unique ID of the retention rule.
///
///
public string Identifier
{
get { return this._identifier; }
set { this._identifier = value; }
}
// Check to see if Identifier property is set
internal bool IsSetIdentifier()
{
return this._identifier != null;
}
///
/// Gets and sets the property LockConfiguration.
///
/// Information about the retention rule lock configuration.
///
///
public LockConfiguration LockConfiguration
{
get { return this._lockConfiguration; }
set { this._lockConfiguration = value; }
}
// Check to see if LockConfiguration property is set
internal bool IsSetLockConfiguration()
{
return this._lockConfiguration != null;
}
///
/// Gets and sets the property LockState.
///
/// The lock state for the retention rule.
///
/// -
///
///
locked
- The retention rule is locked and can't be modified or deleted.
///
/// -
///
///
pending_unlock
- The retention rule has been unlocked but it is still
/// within the unlock delay period. The retention rule can be modified or deleted only
/// after the unlock delay period has expired.
///
/// -
///
///
unlocked
- The retention rule is unlocked and it can be modified or
/// deleted by any user with the required permissions.
///
/// -
///
///
null
- The retention rule has never been locked. Once a retention rule
/// has been locked, it can transition between the locked
and unlocked
/// states only; it can never transition back to null
.
///
///
///
public LockState LockState
{
get { return this._lockState; }
set { this._lockState = value; }
}
// Check to see if LockState property is set
internal bool IsSetLockState()
{
return this._lockState != null;
}
///
/// Gets and sets the property ResourceTags.
///
/// Information about the resource tags used to identify resources that are retained by
/// the retention rule.
///
///
[AWSProperty(Min=0, Max=50)]
public List ResourceTags
{
get { return this._resourceTags; }
set { this._resourceTags = value; }
}
// Check to see if ResourceTags property is set
internal bool IsSetResourceTags()
{
return this._resourceTags != null && this._resourceTags.Count > 0;
}
///
/// Gets and sets the property ResourceType.
///
/// The resource type retained by the retention rule.
///
///
public ResourceType ResourceType
{
get { return this._resourceType; }
set { this._resourceType = value; }
}
// Check to see if ResourceType property is set
internal bool IsSetResourceType()
{
return this._resourceType != null;
}
///
/// Gets and sets the property RetentionPeriod.
///
public RetentionPeriod RetentionPeriod
{
get { return this._retentionPeriod; }
set { this._retentionPeriod = value; }
}
// Check to see if RetentionPeriod property is set
internal bool IsSetRetentionPeriod()
{
return this._retentionPeriod != null;
}
///
/// Gets and sets the property Status.
///
/// The state of the retention rule. Only retention rules that are in the available
/// state retain resources.
///
///
public RuleStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
}
}