/*
* 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 devicefarm-2015-06-23.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.DeviceFarm.Model
{
///
/// Container for the parameters to the CreateNetworkProfile operation.
/// Creates a network profile.
///
public partial class CreateNetworkProfileRequest : AmazonDeviceFarmRequest
{
private string _description;
private long? _downlinkBandwidthBits;
private long? _downlinkDelayMs;
private long? _downlinkJitterMs;
private int? _downlinkLossPercent;
private string _name;
private string _projectArn;
private NetworkProfileType _type;
private long? _uplinkBandwidthBits;
private long? _uplinkDelayMs;
private long? _uplinkJitterMs;
private int? _uplinkLossPercent;
///
/// Gets and sets the property Description.
///
/// The description of the network profile.
///
///
[AWSProperty(Min=0, Max=16384)]
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 DownlinkBandwidthBits.
///
/// The data throughput rate in bits per second, as an integer from 0 to 104857600.
///
///
public long DownlinkBandwidthBits
{
get { return this._downlinkBandwidthBits.GetValueOrDefault(); }
set { this._downlinkBandwidthBits = value; }
}
// Check to see if DownlinkBandwidthBits property is set
internal bool IsSetDownlinkBandwidthBits()
{
return this._downlinkBandwidthBits.HasValue;
}
///
/// Gets and sets the property DownlinkDelayMs.
///
/// Delay time for all packets to destination in milliseconds as an integer from 0 to
/// 2000.
///
///
public long DownlinkDelayMs
{
get { return this._downlinkDelayMs.GetValueOrDefault(); }
set { this._downlinkDelayMs = value; }
}
// Check to see if DownlinkDelayMs property is set
internal bool IsSetDownlinkDelayMs()
{
return this._downlinkDelayMs.HasValue;
}
///
/// Gets and sets the property DownlinkJitterMs.
///
/// Time variation in the delay of received packets in milliseconds as an integer from
/// 0 to 2000.
///
///
public long DownlinkJitterMs
{
get { return this._downlinkJitterMs.GetValueOrDefault(); }
set { this._downlinkJitterMs = value; }
}
// Check to see if DownlinkJitterMs property is set
internal bool IsSetDownlinkJitterMs()
{
return this._downlinkJitterMs.HasValue;
}
///
/// Gets and sets the property DownlinkLossPercent.
///
/// Proportion of received packets that fail to arrive from 0 to 100 percent.
///
///
[AWSProperty(Min=0, Max=100)]
public int DownlinkLossPercent
{
get { return this._downlinkLossPercent.GetValueOrDefault(); }
set { this._downlinkLossPercent = value; }
}
// Check to see if DownlinkLossPercent property is set
internal bool IsSetDownlinkLossPercent()
{
return this._downlinkLossPercent.HasValue;
}
///
/// Gets and sets the property Name.
///
/// The name for the new network profile.
///
///
[AWSProperty(Required=true, Min=0, Max=256)]
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 ProjectArn.
///
/// The Amazon Resource Name (ARN) of the project for which you want to create a network
/// profile.
///
///
[AWSProperty(Required=true, Min=32, Max=1011)]
public string ProjectArn
{
get { return this._projectArn; }
set { this._projectArn = value; }
}
// Check to see if ProjectArn property is set
internal bool IsSetProjectArn()
{
return this._projectArn != null;
}
///
/// Gets and sets the property Type.
///
/// The type of network profile to create. Valid values are listed here.
///
///
public NetworkProfileType Type
{
get { return this._type; }
set { this._type = value; }
}
// Check to see if Type property is set
internal bool IsSetType()
{
return this._type != null;
}
///
/// Gets and sets the property UplinkBandwidthBits.
///
/// The data throughput rate in bits per second, as an integer from 0 to 104857600.
///
///
public long UplinkBandwidthBits
{
get { return this._uplinkBandwidthBits.GetValueOrDefault(); }
set { this._uplinkBandwidthBits = value; }
}
// Check to see if UplinkBandwidthBits property is set
internal bool IsSetUplinkBandwidthBits()
{
return this._uplinkBandwidthBits.HasValue;
}
///
/// Gets and sets the property UplinkDelayMs.
///
/// Delay time for all packets to destination in milliseconds as an integer from 0 to
/// 2000.
///
///
public long UplinkDelayMs
{
get { return this._uplinkDelayMs.GetValueOrDefault(); }
set { this._uplinkDelayMs = value; }
}
// Check to see if UplinkDelayMs property is set
internal bool IsSetUplinkDelayMs()
{
return this._uplinkDelayMs.HasValue;
}
///
/// Gets and sets the property UplinkJitterMs.
///
/// Time variation in the delay of received packets in milliseconds as an integer from
/// 0 to 2000.
///
///
public long UplinkJitterMs
{
get { return this._uplinkJitterMs.GetValueOrDefault(); }
set { this._uplinkJitterMs = value; }
}
// Check to see if UplinkJitterMs property is set
internal bool IsSetUplinkJitterMs()
{
return this._uplinkJitterMs.HasValue;
}
///
/// Gets and sets the property UplinkLossPercent.
///
/// Proportion of transmitted packets that fail to arrive from 0 to 100 percent.
///
///
[AWSProperty(Min=0, Max=100)]
public int UplinkLossPercent
{
get { return this._uplinkLossPercent.GetValueOrDefault(); }
set { this._uplinkLossPercent = value; }
}
// Check to see if UplinkLossPercent property is set
internal bool IsSetUplinkLossPercent()
{
return this._uplinkLossPercent.HasValue;
}
}
}