public PropertyContainer(Models.BatchPoolIdentity protocolObject) : base(BindingState.Bound) { this.TypeProperty = this.CreatePropertyAccessor( UtilitiesInternal.MapEnum <Models.PoolIdentityType, Common.PoolIdentityType>(protocolObject.Type), nameof(Type), BindingAccess.Read); this.UserAssignedIdentitiesProperty = this.CreatePropertyAccessor( UserAssignedIdentity.ConvertFromProtocolCollectionAndFreeze(protocolObject.UserAssignedIdentities), nameof(UserAssignedIdentities), BindingAccess.Read); }
/// <summary> /// Initializes a new instance of the CloudPool class. /// </summary> /// <param name="id">A string that uniquely identifies the Pool within /// the Account.</param> /// <param name="displayName">The display name for the Pool.</param> /// <param name="url">The URL of the Pool.</param> /// <param name="eTag">The ETag of the Pool.</param> /// <param name="lastModified">The last modified time of the /// Pool.</param> /// <param name="creationTime">The creation time of the Pool.</param> /// <param name="state">The current state of the Pool.</param> /// <param name="stateTransitionTime">The time at which the Pool /// entered its current state.</param> /// <param name="allocationState">Whether the Pool is resizing.</param> /// <param name="allocationStateTransitionTime">The time at which the /// Pool entered its current allocation state.</param> /// <param name="vmSize">The size of virtual machines in the Pool. All /// virtual machines in a Pool are the same size.</param> /// <param name="cloudServiceConfiguration">The cloud service /// configuration for the Pool.</param> /// <param name="virtualMachineConfiguration">The virtual machine /// configuration for the Pool.</param> /// <param name="resizeTimeout">The timeout for allocation of Compute /// Nodes to the Pool.</param> /// <param name="resizeErrors">A list of errors encountered while /// performing the last resize on the Pool.</param> /// <param name="currentDedicatedNodes">The number of dedicated Compute /// Nodes currently in the Pool.</param> /// <param name="currentLowPriorityNodes">The number of low-priority /// Compute Nodes currently in the Pool.</param> /// <param name="targetDedicatedNodes">The desired number of dedicated /// Compute Nodes in the Pool.</param> /// <param name="targetLowPriorityNodes">The desired number of /// low-priority Compute Nodes in the Pool.</param> /// <param name="enableAutoScale">Whether the Pool size should /// automatically adjust over time.</param> /// <param name="autoScaleFormula">A formula for the desired number of /// Compute Nodes in the Pool.</param> /// <param name="autoScaleEvaluationInterval">The time interval at /// which to automatically adjust the Pool size according to the /// autoscale formula.</param> /// <param name="autoScaleRun">The results and errors from the last /// execution of the autoscale formula.</param> /// <param name="enableInterNodeCommunication">Whether the Pool permits /// direct communication between Compute Nodes.</param> /// <param name="networkConfiguration">The network configuration for /// the Pool.</param> /// <param name="startTask">A Task specified to run on each Compute /// Node as it joins the Pool.</param> /// <param name="certificateReferences">The list of Certificates to be /// installed on each Compute Node in the Pool.</param> /// <param name="applicationPackageReferences">The list of Packages to /// be installed on each Compute Node in the Pool.</param> /// <param name="applicationLicenses">The list of application licenses /// the Batch service will make available on each Compute Node in the /// Pool.</param> /// <param name="taskSlotsPerNode">The number of task slots that can be /// used to run concurrent tasks on a single compute node in the /// pool.</param> /// <param name="taskSchedulingPolicy">How Tasks are distributed across /// Compute Nodes in a Pool.</param> /// <param name="userAccounts">The list of user Accounts to be created /// on each Compute Node in the Pool.</param> /// <param name="metadata">A list of name-value pairs associated with /// the Pool as metadata.</param> /// <param name="stats">Utilization and resource usage statistics for /// the entire lifetime of the Pool.</param> /// <param name="mountConfiguration">A list of file systems to mount on /// each node in the pool.</param> /// <param name="identity">The identity of the Batch pool, if /// configured.</param> public CloudPool(string id = default(string), string displayName = default(string), string url = default(string), string eTag = default(string), System.DateTime?lastModified = default(System.DateTime?), System.DateTime?creationTime = default(System.DateTime?), PoolState?state = default(PoolState?), System.DateTime?stateTransitionTime = default(System.DateTime?), AllocationState?allocationState = default(AllocationState?), System.DateTime?allocationStateTransitionTime = default(System.DateTime?), string vmSize = default(string), CloudServiceConfiguration cloudServiceConfiguration = default(CloudServiceConfiguration), VirtualMachineConfiguration virtualMachineConfiguration = default(VirtualMachineConfiguration), System.TimeSpan?resizeTimeout = default(System.TimeSpan?), IList <ResizeError> resizeErrors = default(IList <ResizeError>), int?currentDedicatedNodes = default(int?), int?currentLowPriorityNodes = default(int?), int?targetDedicatedNodes = default(int?), int?targetLowPriorityNodes = default(int?), bool?enableAutoScale = default(bool?), string autoScaleFormula = default(string), System.TimeSpan?autoScaleEvaluationInterval = default(System.TimeSpan?), AutoScaleRun autoScaleRun = default(AutoScaleRun), bool?enableInterNodeCommunication = default(bool?), NetworkConfiguration networkConfiguration = default(NetworkConfiguration), StartTask startTask = default(StartTask), IList <CertificateReference> certificateReferences = default(IList <CertificateReference>), IList <ApplicationPackageReference> applicationPackageReferences = default(IList <ApplicationPackageReference>), IList <string> applicationLicenses = default(IList <string>), int?taskSlotsPerNode = default(int?), TaskSchedulingPolicy taskSchedulingPolicy = default(TaskSchedulingPolicy), IList <UserAccount> userAccounts = default(IList <UserAccount>), IList <MetadataItem> metadata = default(IList <MetadataItem>), PoolStatistics stats = default(PoolStatistics), IList <MountConfiguration> mountConfiguration = default(IList <MountConfiguration>), BatchPoolIdentity identity = default(BatchPoolIdentity)) { Id = id; DisplayName = displayName; Url = url; ETag = eTag; LastModified = lastModified; CreationTime = creationTime; State = state; StateTransitionTime = stateTransitionTime; AllocationState = allocationState; AllocationStateTransitionTime = allocationStateTransitionTime; VmSize = vmSize; CloudServiceConfiguration = cloudServiceConfiguration; VirtualMachineConfiguration = virtualMachineConfiguration; ResizeTimeout = resizeTimeout; ResizeErrors = resizeErrors; CurrentDedicatedNodes = currentDedicatedNodes; CurrentLowPriorityNodes = currentLowPriorityNodes; TargetDedicatedNodes = targetDedicatedNodes; TargetLowPriorityNodes = targetLowPriorityNodes; EnableAutoScale = enableAutoScale; AutoScaleFormula = autoScaleFormula; AutoScaleEvaluationInterval = autoScaleEvaluationInterval; AutoScaleRun = autoScaleRun; EnableInterNodeCommunication = enableInterNodeCommunication; NetworkConfiguration = networkConfiguration; StartTask = startTask; CertificateReferences = certificateReferences; ApplicationPackageReferences = applicationPackageReferences; ApplicationLicenses = applicationLicenses; TaskSlotsPerNode = taskSlotsPerNode; TaskSchedulingPolicy = taskSchedulingPolicy; UserAccounts = userAccounts; Metadata = metadata; Stats = stats; MountConfiguration = mountConfiguration; Identity = identity; CustomInit(); }