generated/api/Models/BlackoutWindowDetails.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;

    public partial class BlackoutWindowDetails :
        Commvault.Powershell.Models.IBlackoutWindowDetails,
        Commvault.Powershell.Models.IBlackoutWindowDetailsInternal
    {

        /// <summary>Full job is selected or not for blackout window</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? BackupOperationFull { get => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).Full; set => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).Full = value ?? default(bool); }

        /// <summary>Incremental and Differential job is selected or not for blackout window</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? BackupOperationIncrementalAndDifferential { get => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).IncrementalAndDifferential; set => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).IncrementalAndDifferential = value ?? default(bool); }

        /// <summary>Synthetic Full job is selected or not for blackout window</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? BackupOperationSyntheticFull { get => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).SyntheticFull; set => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).SyntheticFull = value ?? default(bool); }

        /// <summary>Transaction Log job is selected or not for blackout window</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public bool? BackupOperationTransactionLog { get => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).TransactionLog; set => ((Commvault.Powershell.Models.IBackupOperationsListInternal)BackupOperations).TransactionLog = value ?? default(bool); }

        /// <summary>Backing field for <see cref="BackupOperations" /> property.</summary>
        private Commvault.Powershell.Models.IBackupOperationsList _backupOperations;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IBackupOperationsList BackupOperations { get => (this._backupOperations = this._backupOperations ?? new Commvault.Powershell.Models.BackupOperationsList()); set => this._backupOperations = value; }

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

        /// <summary>Between these dates, do not run job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? BetweenDates { get => this._betweenDates; set => this._betweenDates = value; }

        /// <summary>Internal Acessors for BackupOperations</summary>
        Commvault.Powershell.Models.IBackupOperationsList Commvault.Powershell.Models.IBlackoutWindowDetailsInternal.BackupOperations { get => (this._backupOperations = this._backupOperations ?? new Commvault.Powershell.Models.BackupOperationsList()); set { {_backupOperations = value;} } }

        /// <summary>Backing field for <see cref="DoNotRunJob" /> property.</summary>
        private Commvault.Powershell.Models.IDoNotRunJobDetails[] _doNotRunJob;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public Commvault.Powershell.Models.IDoNotRunJobDetails[] DoNotRunJob { get => this._doNotRunJob; set => this._doNotRunJob = value; }

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

        /// <summary>To skip a scheduled job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? DoNotSubmitJob { get => this._doNotSubmitJob; set => this._doNotSubmitJob = value; }

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

        /// <summary>End date in seconds, during which the operation will not run</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? EndDate { get => this._endDate; set => this._endDate = value; }

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

        /// <summary>Name of the blackout window operation rule</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Name { get => this._name; set => this._name = value; }

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

        /// <summary>Start date in seconds, during which the operation will not run</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? StartDate { get => this._startDate; set => this._startDate = value; }

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

        }
    }
    public partial interface IBlackoutWindowDetails :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>Full job is selected or not for blackout window</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Full job is selected or not for blackout window",
        SerializedName = @"full",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BackupOperationFull { get; set; }
        /// <summary>Incremental and Differential job is selected or not for blackout window</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Incremental and Differential job is selected or not for blackout window",
        SerializedName = @"incrementalAndDifferential",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BackupOperationIncrementalAndDifferential { get; set; }
        /// <summary>Synthetic Full job is selected or not for blackout window</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Synthetic Full job is selected or not for blackout window",
        SerializedName = @"syntheticFull",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BackupOperationSyntheticFull { get; set; }
        /// <summary>Transaction Log job is selected or not for blackout window</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Transaction Log job is selected or not for blackout window",
        SerializedName = @"transactionLog",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BackupOperationTransactionLog { get; set; }
        /// <summary>Between these dates, do not run job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Between these dates, do not run job",
        SerializedName = @"betweenDates",
        PossibleTypes = new [] { typeof(bool) })]
        bool? BetweenDates { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"doNotRunJob",
        PossibleTypes = new [] { typeof(Commvault.Powershell.Models.IDoNotRunJobDetails) })]
        Commvault.Powershell.Models.IDoNotRunJobDetails[] DoNotRunJob { get; set; }
        /// <summary>To skip a scheduled job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"To skip a scheduled job",
        SerializedName = @"doNotSubmitJob",
        PossibleTypes = new [] { typeof(bool) })]
        bool? DoNotSubmitJob { get; set; }
        /// <summary>End date in seconds, during which the operation will not run</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"End date in seconds, during which the operation will not run",
        SerializedName = @"endDate",
        PossibleTypes = new [] { typeof(long) })]
        long? EndDate { get; set; }
        /// <summary>Name of the blackout window operation rule</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Name of the blackout window operation rule",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string Name { get; set; }
        /// <summary>Start date in seconds, during which the operation will not run</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Start date in seconds, during which the operation will not run",
        SerializedName = @"startDate",
        PossibleTypes = new [] { typeof(long) })]
        long? StartDate { get; set; }

    }
    internal partial interface IBlackoutWindowDetailsInternal

    {
        /// <summary>Full job is selected or not for blackout window</summary>
        bool? BackupOperationFull { get; set; }
        /// <summary>Incremental and Differential job is selected or not for blackout window</summary>
        bool? BackupOperationIncrementalAndDifferential { get; set; }
        /// <summary>Synthetic Full job is selected or not for blackout window</summary>
        bool? BackupOperationSyntheticFull { get; set; }
        /// <summary>Transaction Log job is selected or not for blackout window</summary>
        bool? BackupOperationTransactionLog { get; set; }

        Commvault.Powershell.Models.IBackupOperationsList BackupOperations { get; set; }
        /// <summary>Between these dates, do not run job</summary>
        bool? BetweenDates { get; set; }

        Commvault.Powershell.Models.IDoNotRunJobDetails[] DoNotRunJob { get; set; }
        /// <summary>To skip a scheduled job</summary>
        bool? DoNotSubmitJob { get; set; }
        /// <summary>End date in seconds, during which the operation will not run</summary>
        long? EndDate { get; set; }
        /// <summary>Name of the blackout window operation rule</summary>
        string Name { get; set; }
        /// <summary>Start date in seconds, during which the operation will not run</summary>
        long? StartDate { get; set; }

    }
}