< Summary

Class:Microsoft.Azure.Batch.Protocol.Models.InboundNATPool
Assembly:Microsoft.Azure.Batch
File(s):C:\Git\azure-sdk-for-net\sdk\batch\Microsoft.Azure.Batch\src\GeneratedProtocol\Models\InboundNatPool.cs
Covered lines:8
Uncovered lines:8
Coverable lines:16
Total lines:143
Line coverage:50% (8 of 16)
Covered branches:0
Total branches:0

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor()-100%100%
.ctor(...)-0%100%
get_Name()-100%100%
get_Protocol()-100%100%
get_BackendPort()-100%100%
get_FrontendPortRangeStart()-100%100%
get_FrontendPortRangeEnd()-100%100%
get_NetworkSecurityGroupRules()-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\batch\Microsoft.Azure.Batch\src\GeneratedProtocol\Models\InboundNatPool.cs

#LineLine coverage
 1// <auto-generated>
 2// Copyright (c) Microsoft Corporation. All rights reserved.
 3// Licensed under the MIT License. See License.txt in the project root for
 4// license information.
 5//
 6// Code generated by Microsoft (R) AutoRest Code Generator.
 7// Changes may cause incorrect behavior and will be lost if the code is
 8// regenerated.
 9// </auto-generated>
 10
 11namespace Microsoft.Azure.Batch.Protocol.Models
 12{
 13    using Newtonsoft.Json;
 14    using System.Collections;
 15    using System.Collections.Generic;
 16    using System.Linq;
 17
 18    /// <summary>
 19    /// A inbound NAT Pool that can be used to address specific ports on
 20    /// Compute Nodes in a Batch Pool externally.
 21    /// </summary>
 22    public partial class InboundNATPool
 23    {
 24        /// <summary>
 25        /// Initializes a new instance of the InboundNATPool class.
 26        /// </summary>
 171427        public InboundNATPool()
 28        {
 29            CustomInit();
 171430        }
 31
 32        /// <summary>
 33        /// Initializes a new instance of the InboundNATPool class.
 34        /// </summary>
 35        /// <param name="name">The name of the endpoint.</param>
 36        /// <param name="protocol">The protocol of the endpoint.</param>
 37        /// <param name="backendPort">The port number on the Compute
 38        /// Node.</param>
 39        /// <param name="frontendPortRangeStart">The first port number in the
 40        /// range of external ports that will be used to provide inbound access
 41        /// to the backendPort on individual Compute Nodes.</param>
 42        /// <param name="frontendPortRangeEnd">The last port number in the
 43        /// range of external ports that will be used to provide inbound access
 44        /// to the backendPort on individual Compute Nodes.</param>
 45        /// <param name="networkSecurityGroupRules">A list of network security
 46        /// group rules that will be applied to the endpoint.</param>
 047        public InboundNATPool(string name, InboundEndpointProtocol protocol, int backendPort, int frontendPortRangeStart
 48        {
 049            Name = name;
 050            Protocol = protocol;
 051            BackendPort = backendPort;
 052            FrontendPortRangeStart = frontendPortRangeStart;
 053            FrontendPortRangeEnd = frontendPortRangeEnd;
 054            NetworkSecurityGroupRules = networkSecurityGroupRules;
 55            CustomInit();
 056        }
 57
 58        /// <summary>
 59        /// An initialization method that performs custom operations like setting defaults
 60        /// </summary>
 61        partial void CustomInit();
 62
 63        /// <summary>
 64        /// Gets or sets the name of the endpoint.
 65        /// </summary>
 66        /// <remarks>
 67        /// The name must be unique within a Batch Pool, can contain letters,
 68        /// numbers, underscores, periods, and hyphens. Names must start with a
 69        /// letter or number, must end with a letter, number, or underscore,
 70        /// and cannot exceed 77 characters.  If any invalid values are
 71        /// provided the request fails with HTTP status code 400.
 72        /// </remarks>
 73        [JsonProperty(PropertyName = "name")]
 374474        public string Name { get; set; }
 75
 76        /// <summary>
 77        /// Gets or sets the protocol of the endpoint.
 78        /// </summary>
 79        /// <remarks>
 80        /// Possible values include: 'tcp', 'udp'
 81        /// </remarks>
 82        [JsonProperty(PropertyName = "protocol")]
 376683        public InboundEndpointProtocol Protocol { get; set; }
 84
 85        /// <summary>
 86        /// Gets or sets the port number on the Compute Node.
 87        /// </summary>
 88        /// <remarks>
 89        /// This must be unique within a Batch Pool. Acceptable values are
 90        /// between 1 and 65535 except for 22, 3389, 29876 and 29877 as these
 91        /// are reserved. If any reserved values are provided the request fails
 92        /// with HTTP status code 400.
 93        /// </remarks>
 94        [JsonProperty(PropertyName = "backendPort")]
 376395        public int BackendPort { get; set; }
 96
 97        /// <summary>
 98        /// Gets or sets the first port number in the range of external ports
 99        /// that will be used to provide inbound access to the backendPort on
 100        /// individual Compute Nodes.
 101        /// </summary>
 102        /// <remarks>
 103        /// Acceptable values range between 1 and 65534 except ports from 50000
 104        /// to 55000 which are reserved. All ranges within a Pool must be
 105        /// distinct and cannot overlap. Each range must contain at least 40
 106        /// ports. If any reserved or overlapping values are provided the
 107        /// request fails with HTTP status code 400.
 108        /// </remarks>
 109        [JsonProperty(PropertyName = "frontendPortRangeStart")]
 3749110        public int FrontendPortRangeStart { get; set; }
 111
 112        /// <summary>
 113        /// Gets or sets the last port number in the range of external ports
 114        /// that will be used to provide inbound access to the backendPort on
 115        /// individual Compute Nodes.
 116        /// </summary>
 117        /// <remarks>
 118        /// Acceptable values range between 1 and 65534 except ports from 50000
 119        /// to 55000 which are reserved by the Batch service. All ranges within
 120        /// a Pool must be distinct and cannot overlap. Each range must contain
 121        /// at least 40 ports. If any reserved or overlapping values are
 122        /// provided the request fails with HTTP status code 400.
 123        /// </remarks>
 124        [JsonProperty(PropertyName = "frontendPortRangeEnd")]
 3748125        public int FrontendPortRangeEnd { get; set; }
 126
 127        /// <summary>
 128        /// Gets or sets a list of network security group rules that will be
 129        /// applied to the endpoint.
 130        /// </summary>
 131        /// <remarks>
 132        /// The maximum number of rules that can be specified across all the
 133        /// endpoints on a Batch Pool is 25. If no network security group rules
 134        /// are specified, a default rule will be created to allow inbound
 135        /// access to the specified backendPort. If the maximum number of
 136        /// network security group rules is exceeded the request fails with
 137        /// HTTP status code 400.
 138        /// </remarks>
 139        [JsonProperty(PropertyName = "networkSecurityGroupRules")]
 3739140        public IList<NetworkSecurityGroupRule> NetworkSecurityGroupRules { get; set; }
 141
 142    }
 143}