generated/api/Models/SlaOptions.cs

// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.9.4, generator: @autorest/powershell@3.0.415)
// Changes may cause incorrect behavior and will be lost if the code is regenerated.

namespace Commvault.Powershell.Models
{
    using static Commvault.Powershell.Runtime.Extensions;

    /// <summary>
    /// A server meets SLA (Service Level Agreement) when all of its subclients have at least one successful backup during the
    /// number of days specified at the CommCell, Server Group or plan level.
    /// </summary>
    public partial class SlaOptions :
        Commvault.Powershell.Models.ISlaOptions,
        Commvault.Powershell.Models.ISlaOptionsInternal
    {

        /// <summary>Backing field for <see cref="EnableAfterDelay" /> property.</summary>
        private long? _enableAfterDelay;

        /// <summary>Time provided in Unix format. Give 0 to reset any existing delay.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? EnableAfterDelay { get => this._enableAfterDelay; set => this._enableAfterDelay = value; }

        /// <summary>Backing field for <see cref="ExcludeFromSla" /> property.</summary>
        private bool? _excludeFromSla;

        /// <summary>Flag to set to exclude plan from SLA</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? ExcludeFromSla { get => this._excludeFromSla; set => this._excludeFromSla = value; }

        /// <summary>Backing field for <see cref="ExclusionReason" /> property.</summary>
        private string _exclusionReason;

        /// <summary>Reason for exclusion from SLA</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string ExclusionReason { get => this._exclusionReason; set => this._exclusionReason = value; }

        /// <summary>Backing field for <see cref="InheritedFrom" /> property.</summary>
        private string _inheritedFrom;

        /// <summary>Tells us from where SLA Period was inherited</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string InheritedFrom { get => this._inheritedFrom; set => this._inheritedFrom = value; }

        /// <summary>Backing field for <see cref="InheritedSlaPeriod" /> property.</summary>
        private long? _inheritedSlaPeriod;

        /// <summary>Inherited SLA Period in Days</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? InheritedSlaPeriod { get => this._inheritedSlaPeriod; set => this._inheritedSlaPeriod = value; }

        /// <summary>Backing field for <see cref="LogSlaMinutes" /> property.</summary>
        private long? _logSlaMinutes;

        /// <summary>Database log SLA period in Minutes</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? LogSlaMinutes { get => this._logSlaMinutes; set => this._logSlaMinutes = value; }

        /// <summary>Backing field for <see cref="SlaPeriod" /> property.</summary>
        private long? _slaPeriod;

        /// <summary>SLA Period in Days</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? SlaPeriod { get => this._slaPeriod; set => this._slaPeriod = value; }

        /// <summary>Backing field for <see cref="UseSystemDefaultSla" /> property.</summary>
        private bool? _useSystemDefaultSla;

        /// <summary>Flag to set to use System Default Service Level Agreement</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? UseSystemDefaultSla { get => this._useSystemDefaultSla; set => this._useSystemDefaultSla = value; }

        /// <summary>Creates an new <see cref="SlaOptions" /> instance.</summary>
        public SlaOptions()
        {

        }
    }
    /// A server meets SLA (Service Level Agreement) when all of its subclients have at least one successful backup during the
    /// number of days specified at the CommCell, Server Group or plan level.
    public partial interface ISlaOptions :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>Time provided in Unix format. Give 0 to reset any existing delay.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Time provided in Unix format. Give 0 to reset any existing delay.",
        SerializedName = @"enableAfterDelay",
        PossibleTypes = new [] { typeof(long) })]
        long? EnableAfterDelay { get; set; }
        /// <summary>Flag to set to exclude plan from SLA</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Flag to set to exclude plan from SLA",
        SerializedName = @"excludeFromSLA",
        PossibleTypes = new [] { typeof(bool) })]
        bool? ExcludeFromSla { get; set; }
        /// <summary>Reason for exclusion from SLA</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Reason for exclusion from SLA",
        SerializedName = @"exclusionReason",
        PossibleTypes = new [] { typeof(string) })]
        string ExclusionReason { get; set; }
        /// <summary>Tells us from where SLA Period was inherited</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Tells us from where SLA Period was inherited",
        SerializedName = @"inheritedFrom",
        PossibleTypes = new [] { typeof(string) })]
        string InheritedFrom { get; set; }
        /// <summary>Inherited SLA Period in Days</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Inherited SLA Period in Days",
        SerializedName = @"inheritedSLAPeriod",
        PossibleTypes = new [] { typeof(long) })]
        long? InheritedSlaPeriod { get; set; }
        /// <summary>Database log SLA period in Minutes</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Database log SLA period in Minutes",
        SerializedName = @"logSLAMinutes",
        PossibleTypes = new [] { typeof(long) })]
        long? LogSlaMinutes { get; set; }
        /// <summary>SLA Period in Days</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"SLA Period in Days",
        SerializedName = @"SLAPeriod",
        PossibleTypes = new [] { typeof(long) })]
        long? SlaPeriod { get; set; }
        /// <summary>Flag to set to use System Default Service Level Agreement</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Flag to set to use System Default Service Level Agreement",
        SerializedName = @"useSystemDefaultSLA",
        PossibleTypes = new [] { typeof(bool) })]
        bool? UseSystemDefaultSla { get; set; }

    }
    /// A server meets SLA (Service Level Agreement) when all of its subclients have at least one successful backup during the
    /// number of days specified at the CommCell, Server Group or plan level.
    internal partial interface ISlaOptionsInternal

    {
        /// <summary>Time provided in Unix format. Give 0 to reset any existing delay.</summary>
        long? EnableAfterDelay { get; set; }
        /// <summary>Flag to set to exclude plan from SLA</summary>
        bool? ExcludeFromSla { get; set; }
        /// <summary>Reason for exclusion from SLA</summary>
        string ExclusionReason { get; set; }
        /// <summary>Tells us from where SLA Period was inherited</summary>
        string InheritedFrom { get; set; }
        /// <summary>Inherited SLA Period in Days</summary>
        long? InheritedSlaPeriod { get; set; }
        /// <summary>Database log SLA period in Minutes</summary>
        long? LogSlaMinutes { get; set; }
        /// <summary>SLA Period in Days</summary>
        long? SlaPeriod { get; set; }
        /// <summary>Flag to set to use System Default Service Level Agreement</summary>
        bool? UseSystemDefaultSla { get; set; }

    }
}