/*
* 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 ec2-2016-11-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.EC2.Model
{
///
/// Container for the parameters to the ModifyFpgaImageAttribute operation.
/// Modifies the specified attribute of the specified Amazon FPGA Image (AFI).
///
public partial class ModifyFpgaImageAttributeRequest : AmazonEC2Request
{
private FpgaImageAttributeName _attribute;
private string _description;
private string _fpgaImageId;
private LoadPermissionModifications _loadPermission;
private string _name;
private OperationType _operationType;
private List _productCodes = new List();
private List _userGroups = new List();
private List _userIds = new List();
///
/// Gets and sets the property Attribute.
///
/// The name of the attribute.
///
///
public FpgaImageAttributeName Attribute
{
get { return this._attribute; }
set { this._attribute = value; }
}
// Check to see if Attribute property is set
internal bool IsSetAttribute()
{
return this._attribute != null;
}
///
/// Gets and sets the property Description.
///
/// A description for the AFI.
///
///
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 FpgaImageId.
///
/// The ID of the AFI.
///
///
[AWSProperty(Required=true)]
public string FpgaImageId
{
get { return this._fpgaImageId; }
set { this._fpgaImageId = value; }
}
// Check to see if FpgaImageId property is set
internal bool IsSetFpgaImageId()
{
return this._fpgaImageId != null;
}
///
/// Gets and sets the property LoadPermission.
///
/// The load permission for the AFI.
///
///
public LoadPermissionModifications LoadPermission
{
get { return this._loadPermission; }
set { this._loadPermission = value; }
}
// Check to see if LoadPermission property is set
internal bool IsSetLoadPermission()
{
return this._loadPermission != null;
}
///
/// Gets and sets the property Name.
///
/// A name for the AFI.
///
///
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 OperationType.
///
/// The operation type.
///
///
public OperationType OperationType
{
get { return this._operationType; }
set { this._operationType = value; }
}
// Check to see if OperationType property is set
internal bool IsSetOperationType()
{
return this._operationType != null;
}
///
/// Gets and sets the property ProductCodes.
///
/// The product codes. After you add a product code to an AFI, it can't be removed. This
/// parameter is valid only when modifying the productCodes
attribute.
///
///
public List ProductCodes
{
get { return this._productCodes; }
set { this._productCodes = value; }
}
// Check to see if ProductCodes property is set
internal bool IsSetProductCodes()
{
return this._productCodes != null && this._productCodes.Count > 0;
}
///
/// Gets and sets the property UserGroups.
///
/// The user groups. This parameter is valid only when modifying the loadPermission
/// attribute.
///
///
public List UserGroups
{
get { return this._userGroups; }
set { this._userGroups = value; }
}
// Check to see if UserGroups property is set
internal bool IsSetUserGroups()
{
return this._userGroups != null && this._userGroups.Count > 0;
}
///
/// Gets and sets the property UserIds.
///
/// The Amazon Web Services account IDs. This parameter is valid only when modifying the
/// loadPermission
attribute.
///
///
public List UserIds
{
get { return this._userIds; }
set { this._userIds = value; }
}
// Check to see if UserIds property is set
internal bool IsSetUserIds()
{
return this._userIds != null && this._userIds.Count > 0;
}
}
}