-
Notifications
You must be signed in to change notification settings - Fork 4.6k
/
ScalingPlanPooledScheduleData.cs
105 lines (99 loc) · 7.27 KB
/
ScalingPlanPooledScheduleData.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
#nullable disable
using System.Collections.Generic;
using Azure.Core;
using Azure.ResourceManager.DesktopVirtualization.Models;
using Azure.ResourceManager.Models;
namespace Azure.ResourceManager.DesktopVirtualization
{
/// <summary>
/// A class representing the ScalingPlanPooledSchedule data model.
/// Represents a ScalingPlanPooledSchedule definition.
/// </summary>
public partial class ScalingPlanPooledScheduleData : ResourceData
{
/// <summary> Initializes a new instance of ScalingPlanPooledScheduleData. </summary>
public ScalingPlanPooledScheduleData()
{
DaysOfWeek = new ChangeTrackingList<DesktopVirtualizationDayOfWeek>();
}
/// <summary> Initializes a new instance of ScalingPlanPooledScheduleData. </summary>
/// <param name="id"> The id. </param>
/// <param name="name"> The name. </param>
/// <param name="resourceType"> The resourceType. </param>
/// <param name="systemData"> The systemData. </param>
/// <param name="daysOfWeek"> Set of days of the week on which this schedule is active. </param>
/// <param name="rampUpStartTime"> Starting time for ramp up period. </param>
/// <param name="rampUpLoadBalancingAlgorithm"> Load balancing algorithm for ramp up period. </param>
/// <param name="rampUpMinimumHostsPct"> Minimum host percentage for ramp up period. </param>
/// <param name="rampUpCapacityThresholdPct"> Capacity threshold for ramp up period. </param>
/// <param name="peakStartTime"> Starting time for peak period. </param>
/// <param name="peakLoadBalancingAlgorithm"> Load balancing algorithm for peak period. </param>
/// <param name="rampDownStartTime"> Starting time for ramp down period. </param>
/// <param name="rampDownLoadBalancingAlgorithm"> Load balancing algorithm for ramp down period. </param>
/// <param name="rampDownMinimumHostsPct"> Minimum host percentage for ramp down period. </param>
/// <param name="rampDownCapacityThresholdPct"> Capacity threshold for ramp down period. </param>
/// <param name="rampDownForceLogoffUsers"> Should users be logged off forcefully from hosts. </param>
/// <param name="rampDownStopHostsWhen"> Specifies when to stop hosts during ramp down period. </param>
/// <param name="rampDownWaitTimeMinutes"> Number of minutes to wait to stop hosts during ramp down period. </param>
/// <param name="rampDownNotificationMessage"> Notification message for users during ramp down period. </param>
/// <param name="offPeakStartTime"> Starting time for off-peak period. </param>
/// <param name="offPeakLoadBalancingAlgorithm"> Load balancing algorithm for off-peak period. </param>
internal ScalingPlanPooledScheduleData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, IList<DesktopVirtualizationDayOfWeek> daysOfWeek, ScalingActionTime rampUpStartTime, SessionHostLoadBalancingAlgorithm? rampUpLoadBalancingAlgorithm, int? rampUpMinimumHostsPct, int? rampUpCapacityThresholdPct, ScalingActionTime peakStartTime, SessionHostLoadBalancingAlgorithm? peakLoadBalancingAlgorithm, ScalingActionTime rampDownStartTime, SessionHostLoadBalancingAlgorithm? rampDownLoadBalancingAlgorithm, int? rampDownMinimumHostsPct, int? rampDownCapacityThresholdPct, bool? rampDownForceLogoffUsers, DesktopVirtualizationStopHostsWhen? rampDownStopHostsWhen, int? rampDownWaitTimeMinutes, string rampDownNotificationMessage, ScalingActionTime offPeakStartTime, SessionHostLoadBalancingAlgorithm? offPeakLoadBalancingAlgorithm) : base(id, name, resourceType, systemData)
{
DaysOfWeek = daysOfWeek;
RampUpStartTime = rampUpStartTime;
RampUpLoadBalancingAlgorithm = rampUpLoadBalancingAlgorithm;
RampUpMinimumHostsPct = rampUpMinimumHostsPct;
RampUpCapacityThresholdPct = rampUpCapacityThresholdPct;
PeakStartTime = peakStartTime;
PeakLoadBalancingAlgorithm = peakLoadBalancingAlgorithm;
RampDownStartTime = rampDownStartTime;
RampDownLoadBalancingAlgorithm = rampDownLoadBalancingAlgorithm;
RampDownMinimumHostsPct = rampDownMinimumHostsPct;
RampDownCapacityThresholdPct = rampDownCapacityThresholdPct;
RampDownForceLogoffUsers = rampDownForceLogoffUsers;
RampDownStopHostsWhen = rampDownStopHostsWhen;
RampDownWaitTimeMinutes = rampDownWaitTimeMinutes;
RampDownNotificationMessage = rampDownNotificationMessage;
OffPeakStartTime = offPeakStartTime;
OffPeakLoadBalancingAlgorithm = offPeakLoadBalancingAlgorithm;
}
/// <summary> Set of days of the week on which this schedule is active. </summary>
public IList<DesktopVirtualizationDayOfWeek> DaysOfWeek { get; }
/// <summary> Starting time for ramp up period. </summary>
public ScalingActionTime RampUpStartTime { get; set; }
/// <summary> Load balancing algorithm for ramp up period. </summary>
public SessionHostLoadBalancingAlgorithm? RampUpLoadBalancingAlgorithm { get; set; }
/// <summary> Minimum host percentage for ramp up period. </summary>
public int? RampUpMinimumHostsPct { get; set; }
/// <summary> Capacity threshold for ramp up period. </summary>
public int? RampUpCapacityThresholdPct { get; set; }
/// <summary> Starting time for peak period. </summary>
public ScalingActionTime PeakStartTime { get; set; }
/// <summary> Load balancing algorithm for peak period. </summary>
public SessionHostLoadBalancingAlgorithm? PeakLoadBalancingAlgorithm { get; set; }
/// <summary> Starting time for ramp down period. </summary>
public ScalingActionTime RampDownStartTime { get; set; }
/// <summary> Load balancing algorithm for ramp down period. </summary>
public SessionHostLoadBalancingAlgorithm? RampDownLoadBalancingAlgorithm { get; set; }
/// <summary> Minimum host percentage for ramp down period. </summary>
public int? RampDownMinimumHostsPct { get; set; }
/// <summary> Capacity threshold for ramp down period. </summary>
public int? RampDownCapacityThresholdPct { get; set; }
/// <summary> Should users be logged off forcefully from hosts. </summary>
public bool? RampDownForceLogoffUsers { get; set; }
/// <summary> Specifies when to stop hosts during ramp down period. </summary>
public DesktopVirtualizationStopHostsWhen? RampDownStopHostsWhen { get; set; }
/// <summary> Number of minutes to wait to stop hosts during ramp down period. </summary>
public int? RampDownWaitTimeMinutes { get; set; }
/// <summary> Notification message for users during ramp down period. </summary>
public string RampDownNotificationMessage { get; set; }
/// <summary> Starting time for off-peak period. </summary>
public ScalingActionTime OffPeakStartTime { get; set; }
/// <summary> Load balancing algorithm for off-peak period. </summary>
public SessionHostLoadBalancingAlgorithm? OffPeakLoadBalancingAlgorithm { get; set; }
}
}