generated/api/Models/ArchivePlanArchivingRules.cs

// Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.2, generator: @autorest/powershell@4.0.708)
// 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>Files which meet both time stamp and file size rules will be archived</summary>
    public partial class ArchivePlanArchivingRules :
        Commvault.Powershell.Models.IArchivePlanArchivingRules,
        Commvault.Powershell.Models.IArchivePlanArchivingRulesInternal
    {

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

        /// <summary>
        /// After an archive job, replace the file that meets the archiving rules with a stub or delete the file that meets the archiving
        /// rules
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string AfterArchiving { get => this._afterArchiving; set => this._afterArchiving = value; }

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

        /// <summary>
        /// To archive files based on the size of the file, specify the minimum file size in KB.
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? FileSize { get => this._fileSize; set => this._fileSize = value; }

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

        /// <summary>
        /// To archive files based on the last accessed or modified date of each file within the folder, specify the number of days.
        /// Should be supplied with fileTimestampMethod.
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? FileTimestamp { get => this._fileTimestamp; set => this._fileTimestamp = value; }

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

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string FileTimestampMethod { get => this._fileTimestampMethod; set => this._fileTimestampMethod = value; }

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

        }
    }
    /// Files which meet both time stamp and file size rules will be archived
    public partial interface IArchivePlanArchivingRules :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        /// <summary>
        /// After an archive job, replace the file that meets the archiving rules with a stub or delete the file that meets the archiving
        /// rules
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"After an archive job, replace the file that meets the archiving rules with a stub or delete the file that meets the archiving rules",
        SerializedName = @"afterArchiving",
        PossibleTypes = new [] { typeof(string) })]
        string AfterArchiving { get; set; }
        /// <summary>
        /// To archive files based on the size of the file, specify the minimum file size in KB.
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"To archive files based on the size of the file, specify the minimum file size in KB.",
        SerializedName = @"fileSize",
        PossibleTypes = new [] { typeof(long) })]
        long? FileSize { get; set; }
        /// <summary>
        /// To archive files based on the last accessed or modified date of each file within the folder, specify the number of days.
        /// Should be supplied with fileTimestampMethod.
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"To archive files based on the last accessed or modified date of each file within the folder, specify the number of days. Should be supplied with fileTimestampMethod.",
        SerializedName = @"fileTimestamp",
        PossibleTypes = new [] { typeof(long) })]
        long? FileTimestamp { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Read = true,
        Create = true,
        Update = true,
        Description = @"",
        SerializedName = @"fileTimestampMethod",
        PossibleTypes = new [] { typeof(string) })]
        string FileTimestampMethod { get; set; }

    }
    /// Files which meet both time stamp and file size rules will be archived
    internal partial interface IArchivePlanArchivingRulesInternal

    {
        /// <summary>
        /// After an archive job, replace the file that meets the archiving rules with a stub or delete the file that meets the archiving
        /// rules
        /// </summary>
        string AfterArchiving { get; set; }
        /// <summary>
        /// To archive files based on the size of the file, specify the minimum file size in KB.
        /// </summary>
        long? FileSize { get; set; }
        /// <summary>
        /// To archive files based on the last accessed or modified date of each file within the folder, specify the number of days.
        /// Should be supplied with fileTimestampMethod.
        /// </summary>
        long? FileTimestamp { get; set; }

        string FileTimestampMethod { get; set; }

    }
}