< Summary

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

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor()-100%100%
.ctor(...)-0%100%
get_NumberOfInstances()-100%100%
get_CoordinationCommandLine()-100%100%
get_CommonResourceFiles()-100%100%

File(s)

C:\Git\azure-sdk-for-net\sdk\batch\Microsoft.Azure.Batch\src\GeneratedProtocol\Models\MultiInstanceSettings.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    /// Settings which specify how to run a multi-instance Task.
 20    /// </summary>
 21    /// <remarks>
 22    /// Multi-instance Tasks are commonly used to support MPI Tasks. In the MPI
 23    /// case, if any of the subtasks fail (for example due to exiting with a
 24    /// non-zero exit code) the entire multi-instance Task fails. The
 25    /// multi-instance Task is then terminated and retried, up to its retry
 26    /// limit.
 27    /// </remarks>
 28    public partial class MultiInstanceSettings
 29    {
 30        /// <summary>
 31        /// Initializes a new instance of the MultiInstanceSettings class.
 32        /// </summary>
 65033        public MultiInstanceSettings()
 34        {
 35            CustomInit();
 65036        }
 37
 38        /// <summary>
 39        /// Initializes a new instance of the MultiInstanceSettings class.
 40        /// </summary>
 41        /// <param name="coordinationCommandLine">The command line to run on
 42        /// all the Compute Nodes to enable them to coordinate when the primary
 43        /// runs the main Task command.</param>
 44        /// <param name="numberOfInstances">The number of Compute Nodes
 45        /// required by the Task.</param>
 46        /// <param name="commonResourceFiles">A list of files that the Batch
 47        /// service will download before running the coordination command
 48        /// line.</param>
 049        public MultiInstanceSettings(string coordinationCommandLine, int? numberOfInstances = default(int?), IList<Resou
 50        {
 051            NumberOfInstances = numberOfInstances;
 052            CoordinationCommandLine = coordinationCommandLine;
 053            CommonResourceFiles = commonResourceFiles;
 54            CustomInit();
 055        }
 56
 57        /// <summary>
 58        /// An initialization method that performs custom operations like setting defaults
 59        /// </summary>
 60        partial void CustomInit();
 61
 62        /// <summary>
 63        /// Gets or sets the number of Compute Nodes required by the Task.
 64        /// </summary>
 65        /// <remarks>
 66        /// If omitted, the default is 1.
 67        /// </remarks>
 68        [JsonProperty(PropertyName = "numberOfInstances")]
 156969        public int? NumberOfInstances { get; set; }
 70
 71        /// <summary>
 72        /// Gets or sets the command line to run on all the Compute Nodes to
 73        /// enable them to coordinate when the primary runs the main Task
 74        /// command.
 75        /// </summary>
 76        /// <remarks>
 77        /// A typical coordination command line launches a background service
 78        /// and verifies that the service is ready to process inter-node
 79        /// messages.
 80        /// </remarks>
 81        [JsonProperty(PropertyName = "coordinationCommandLine")]
 155282        public string CoordinationCommandLine { get; set; }
 83
 84        /// <summary>
 85        /// Gets or sets a list of files that the Batch service will download
 86        /// before running the coordination command line.
 87        /// </summary>
 88        /// <remarks>
 89        /// The difference between common resource files and Task resource
 90        /// files is that common resource files are downloaded for all subtasks
 91        /// including the primary, whereas Task resource files are downloaded
 92        /// only for the primary. Also note that these resource files are not
 93        /// downloaded to the Task working directory, but instead are
 94        /// downloaded to the Task root directory (one directory above the
 95        /// working directory).  There is a maximum size for the list of
 96        /// resource files.  When the max size is exceeded, the request will
 97        /// fail and the response error code will be RequestEntityTooLarge. If
 98        /// this occurs, the collection of ResourceFiles must be reduced in
 99        /// size. This can be achieved using .zip files, Application Packages,
 100        /// or Docker Containers.
 101        /// </remarks>
 102        [JsonProperty(PropertyName = "commonResourceFiles")]
 1571103        public IList<ResourceFile> CommonResourceFiles { get; set; }
 104
 105    }
 106}