/*
* 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 memorydb-2021-01-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.MemoryDB.Model
{
///
/// An Access Control List. You can authenticate users with Access Contol Lists. ACLs
/// enable you to control cluster access by grouping users. These Access control lists
/// are designed as a way to organize access to clusters.
///
public partial class ACL
{
private string _arn;
private List _clusters = new List();
private string _minimumEngineVersion;
private string _name;
private ACLPendingChanges _pendingChanges;
private string _status;
private List _userNames = new List();
///
/// Gets and sets the property ARN.
///
/// The Amazon Resource Name (ARN) of the ACL
///
///
public string ARN
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if ARN property is set
internal bool IsSetARN()
{
return this._arn != null;
}
///
/// Gets and sets the property Clusters.
///
/// A list of clusters associated with the ACL.
///
///
public List Clusters
{
get { return this._clusters; }
set { this._clusters = value; }
}
// Check to see if Clusters property is set
internal bool IsSetClusters()
{
return this._clusters != null && this._clusters.Count > 0;
}
///
/// Gets and sets the property MinimumEngineVersion.
///
/// The minimum engine version supported for the ACL
///
///
public string MinimumEngineVersion
{
get { return this._minimumEngineVersion; }
set { this._minimumEngineVersion = value; }
}
// Check to see if MinimumEngineVersion property is set
internal bool IsSetMinimumEngineVersion()
{
return this._minimumEngineVersion != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the Access Control List
///
///
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property PendingChanges.
///
/// A list of updates being applied to the ACL.
///
///
public ACLPendingChanges PendingChanges
{
get { return this._pendingChanges; }
set { this._pendingChanges = value; }
}
// Check to see if PendingChanges property is set
internal bool IsSetPendingChanges()
{
return this._pendingChanges != null;
}
///
/// Gets and sets the property Status.
///
/// Indicates ACL status. Can be "creating", "active", "modifying", "deleting".
///
///
public string 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 UserNames.
///
/// The list of user names that belong to the ACL.
///
///
public List UserNames
{
get { return this._userNames; }
set { this._userNames = value; }
}
// Check to see if UserNames property is set
internal bool IsSetUserNames()
{
return this._userNames != null && this._userNames.Count > 0;
}
}
}