azure-arm-insights
Version:
Microsoft Azure Insights Management Client Library for node
219 lines (213 loc) • 10 kB
JavaScript
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/
;
const models = require('./index');
/**
* @class
* Initializes a new instance of the AutoscaleProfile class.
* @constructor
* Autoscale profile.
*
* @member {string} name the name of the profile.
*
* @member {object} capacity the number of instances that can be used during
* this profile.
*
* @member {string} [capacity.minimum] the minimum number of instances for the
* resource.
*
* @member {string} [capacity.maximum] the maximum number of instances for the
* resource. The actual maximum number of instances is limited by the cores
* that are available in the subscription.
*
* @member {string} [capacity.default] the number of instances that will be set
* if metrics are not available for evaluation. The default is only used if the
* current instance count is lower than the default.
*
* @member {array} rules the collection of rules that provide the triggers and
* parameters for the scaling action. A maximum of 10 rules can be specified.
*
* @member {object} [fixedDate] the specific date-time for the profile. This
* element is not used if the Recurrence element is used.
*
* @member {string} [fixedDate.timeZone] the timezone of the start and end
* times for the profile. Some examples of valid timezones are: Dateline
* Standard Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time,
* Pacific Standard Time (Mexico), Pacific Standard Time, US Mountain Standard
* Time, Mountain Standard Time (Mexico), Mountain Standard Time, Central
* America Standard Time, Central Standard Time, Central Standard Time
* (Mexico), Canada Central Standard Time, SA Pacific Standard Time, Eastern
* Standard Time, US Eastern Standard Time, Venezuela Standard Time, Paraguay
* Standard Time, Atlantic Standard Time, Central Brazilian Standard Time, SA
* Western Standard Time, Pacific SA Standard Time, Newfoundland Standard Time,
* E. South America Standard Time, Argentina Standard Time, SA Eastern Standard
* Time, Greenland Standard Time, Montevideo Standard Time, Bahia Standard
* Time, UTC-02, Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde
* Standard Time, Morocco Standard Time, UTC, GMT Standard Time, Greenwich
* Standard Time, W. Europe Standard Time, Central Europe Standard Time,
* Romance Standard Time, Central European Standard Time, W. Central Africa
* Standard Time, Namibia Standard Time, Jordan Standard Time, GTB Standard
* Time, Middle East Standard Time, Egypt Standard Time, Syria Standard Time,
* E. Europe Standard Time, South Africa Standard Time, FLE Standard Time,
* Turkey Standard Time, Israel Standard Time, Kaliningrad Standard Time, Libya
* Standard Time, Arabic Standard Time, Arab Standard Time, Belarus Standard
* Time, Russian Standard Time, E. Africa Standard Time, Iran Standard Time,
* Arabian Standard Time, Azerbaijan Standard Time, Russia Time Zone 3,
* Mauritius Standard Time, Georgian Standard Time, Caucasus Standard Time,
* Afghanistan Standard Time, West Asia Standard Time, Ekaterinburg Standard
* Time, Pakistan Standard Time, India Standard Time, Sri Lanka Standard Time,
* Nepal Standard Time, Central Asia Standard Time, Bangladesh Standard Time,
* N. Central Asia Standard Time, Myanmar Standard Time, SE Asia Standard Time,
* North Asia Standard Time, China Standard Time, North Asia East Standard
* Time, Singapore Standard Time, W. Australia Standard Time, Taipei Standard
* Time, Ulaanbaatar Standard Time, Tokyo Standard Time, Korea Standard Time,
* Yakutsk Standard Time, Cen. Australia Standard Time, AUS Central Standard
* Time, E. Australia Standard Time, AUS Eastern Standard Time, West Pacific
* Standard Time, Tasmania Standard Time, Magadan Standard Time, Vladivostok
* Standard Time, Russia Time Zone 10, Central Pacific Standard Time, Russia
* Time Zone 11, New Zealand Standard Time, UTC+12, Fiji Standard Time,
* Kamchatka Standard Time, Tonga Standard Time, Samoa Standard Time, Line
* Islands Standard Time
*
* @member {date} [fixedDate.start] the start time for the profile in ISO 8601
* format.
*
* @member {date} [fixedDate.end] the end time for the profile in ISO 8601
* format.
*
* @member {object} [recurrence] the repeating times at which this profile
* begins. This element is not used if the FixedDate element is used.
*
* @member {string} [recurrence.frequency] the recurrence frequency. How often
* the schedule profile should take effect. This value must be Week, meaning
* each week will have the same set of profiles. Possible values include:
* 'None', 'Second', 'Minute', 'Hour', 'Day', 'Week', 'Month', 'Year'
*
* @member {object} [recurrence.schedule] the scheduling constraints for when
* the profile begins.
*
* @member {string} [recurrence.schedule.timeZone] the timezone for the hours
* of the profile. Some examples of valid timezones are: Dateline Standard
* Time, UTC-11, Hawaiian Standard Time, Alaskan Standard Time, Pacific
* Standard Time (Mexico), Pacific Standard Time, US Mountain Standard Time,
* Mountain Standard Time (Mexico), Mountain Standard Time, Central America
* Standard Time, Central Standard Time, Central Standard Time (Mexico), Canada
* Central Standard Time, SA Pacific Standard Time, Eastern Standard Time, US
* Eastern Standard Time, Venezuela Standard Time, Paraguay Standard Time,
* Atlantic Standard Time, Central Brazilian Standard Time, SA Western Standard
* Time, Pacific SA Standard Time, Newfoundland Standard Time, E. South America
* Standard Time, Argentina Standard Time, SA Eastern Standard Time, Greenland
* Standard Time, Montevideo Standard Time, Bahia Standard Time, UTC-02,
* Mid-Atlantic Standard Time, Azores Standard Time, Cape Verde Standard Time,
* Morocco Standard Time, UTC, GMT Standard Time, Greenwich Standard Time, W.
* Europe Standard Time, Central Europe Standard Time, Romance Standard Time,
* Central European Standard Time, W. Central Africa Standard Time, Namibia
* Standard Time, Jordan Standard Time, GTB Standard Time, Middle East Standard
* Time, Egypt Standard Time, Syria Standard Time, E. Europe Standard Time,
* South Africa Standard Time, FLE Standard Time, Turkey Standard Time, Israel
* Standard Time, Kaliningrad Standard Time, Libya Standard Time, Arabic
* Standard Time, Arab Standard Time, Belarus Standard Time, Russian Standard
* Time, E. Africa Standard Time, Iran Standard Time, Arabian Standard Time,
* Azerbaijan Standard Time, Russia Time Zone 3, Mauritius Standard Time,
* Georgian Standard Time, Caucasus Standard Time, Afghanistan Standard Time,
* West Asia Standard Time, Ekaterinburg Standard Time, Pakistan Standard Time,
* India Standard Time, Sri Lanka Standard Time, Nepal Standard Time, Central
* Asia Standard Time, Bangladesh Standard Time, N. Central Asia Standard Time,
* Myanmar Standard Time, SE Asia Standard Time, North Asia Standard Time,
* China Standard Time, North Asia East Standard Time, Singapore Standard Time,
* W. Australia Standard Time, Taipei Standard Time, Ulaanbaatar Standard Time,
* Tokyo Standard Time, Korea Standard Time, Yakutsk Standard Time, Cen.
* Australia Standard Time, AUS Central Standard Time, E. Australia Standard
* Time, AUS Eastern Standard Time, West Pacific Standard Time, Tasmania
* Standard Time, Magadan Standard Time, Vladivostok Standard Time, Russia Time
* Zone 10, Central Pacific Standard Time, Russia Time Zone 11, New Zealand
* Standard Time, UTC+12, Fiji Standard Time, Kamchatka Standard Time, Tonga
* Standard Time, Samoa Standard Time, Line Islands Standard Time
*
* @member {array} [recurrence.schedule.days] the collection of days that the
* profile takes effect on. Possible values are Sunday through Saturday.
*
* @member {array} [recurrence.schedule.hours] A collection of hours that the
* profile takes effect on. Values supported are 0 to 23 on the 24-hour clock
* (AM/PM times are not supported).
*
* @member {array} [recurrence.schedule.minutes] A collection of minutes at
* which the profile takes effect at.
*
*/
class AutoscaleProfile {
constructor() {
}
/**
* Defines the metadata of AutoscaleProfile
*
* @returns {object} metadata of AutoscaleProfile
*
*/
mapper() {
return {
required: false,
serializedName: 'AutoscaleProfile',
type: {
name: 'Composite',
className: 'AutoscaleProfile',
modelProperties: {
name: {
required: true,
serializedName: 'name',
type: {
name: 'String'
}
},
capacity: {
required: true,
serializedName: 'capacity',
type: {
name: 'Composite',
className: 'ScaleCapacity'
}
},
rules: {
required: true,
serializedName: 'rules',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'ScaleRuleElementType',
type: {
name: 'Composite',
className: 'ScaleRule'
}
}
}
},
fixedDate: {
required: false,
serializedName: 'fixedDate',
type: {
name: 'Composite',
className: 'TimeWindow'
}
},
recurrence: {
required: false,
serializedName: 'recurrence',
type: {
name: 'Composite',
className: 'Recurrence'
}
}
}
}
};
}
}
module.exports = AutoscaleProfile;