generated/api/Models/JobDetailForStorage.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>Details of a Job on storage.</summary>
    public partial class JobDetailForStorage :
        Commvault.Powershell.Models.IJobDetailForStorage,
        Commvault.Powershell.Models.IJobDetailForStorageInternal
    {

        /// <summary>Backing field for <see cref="AgentType" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _agentType;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName AgentType { get => (this._agentType = this._agentType ?? new Commvault.Powershell.Models.IdName()); set => this._agentType = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? AgentTypeId { get => ((Commvault.Powershell.Models.IIdNameInternal)AgentType).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)AgentType).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string AgentTypeName { get => ((Commvault.Powershell.Models.IIdNameInternal)AgentType).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)AgentType).Name = value ?? null; }

        /// <summary>Backing field for <see cref="AvgThroughput" /> property.</summary>
        private float? _avgThroughput;

        /// <summary>Average throughput of the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public float? AvgThroughput { get => this._avgThroughput; set => this._avgThroughput = value; }

        /// <summary>Backing field for <see cref="BackupSet" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _backupSet;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName BackupSet { get => (this._backupSet = this._backupSet ?? new Commvault.Powershell.Models.IdName()); set => this._backupSet = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? BackupSetId { get => ((Commvault.Powershell.Models.IIdNameInternal)BackupSet).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)BackupSet).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string BackupSetName { get => ((Commvault.Powershell.Models.IIdNameInternal)BackupSet).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)BackupSet).Name = value ?? null; }

        /// <summary>Internal Acessors for AgentType</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.AgentType { get => (this._agentType = this._agentType ?? new Commvault.Powershell.Models.IdName()); set { {_agentType = value;} } }

        /// <summary>Internal Acessors for BackupSet</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.BackupSet { get => (this._backupSet = this._backupSet ?? new Commvault.Powershell.Models.IdName()); set { {_backupSet = value;} } }

        /// <summary>Internal Acessors for Instance</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.Instance { get => (this._instance = this._instance ?? new Commvault.Powershell.Models.IdName()); set { {_instance = value;} } }

        /// <summary>Internal Acessors for Region</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.Region { get => (this._region = this._region ?? new Commvault.Powershell.Models.IdName()); set { {_region = value;} } }

        /// <summary>Internal Acessors for Server</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.Server { get => (this._server = this._server ?? new Commvault.Powershell.Models.IdName()); set { {_server = value;} } }

        /// <summary>Internal Acessors for SubClient</summary>
        Commvault.Powershell.Models.IIdName Commvault.Powershell.Models.IJobDetailForStorageInternal.SubClient { get => (this._subClient = this._subClient ?? new Commvault.Powershell.Models.IdName()); set { {_subClient = value;} } }

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

        /// <summary>Auxcopied time</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? CopiedTime { get => this._copiedTime; set => this._copiedTime = value; }

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

        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [0 = unchecked, 1 = expired, 2 = do not check, 3
        /// = to be checked, 4 = partial checked, 5 = successful, 6 = failed]
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? DataVerificationStatus { get => this._dataVerificationStatus; set => this._dataVerificationStatus = value; }

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

        /// <summary>Size of the data stored on the media.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? DataWritten { get => this._dataWritten; set => this._dataWritten = value; }

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

        /// <summary>Set to true if Job is deduplicated.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? Deduplicated { get => this._deduplicated; set => this._deduplicated = value; }

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

        /// <summary>Job description</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Description { get => this._description; set => this._description = value; }

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

        /// <summary>The time duration for which the job ran</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? Duration { get => this._duration; set => this._duration = value; }

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

        /// <summary>Set to true if Job is encrypted</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? Encrypted { get => this._encrypted; set => this._encrypted = value; }

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

        /// <summary>The date and time the job ended</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? EndTime { get => this._endTime; set => this._endTime = value; }

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

        /// <summary>Set to true if Job is hardware encrypted</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? HardwareEncrypted { get => this._hardwareEncrypted; set => this._hardwareEncrypted = value; }

        /// <summary>Backing field for <see cref="Instance" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _instance;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName Instance { get => (this._instance = this._instance ?? new Commvault.Powershell.Models.IdName()); set => this._instance = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? InstanceId { get => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string InstanceName { get => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Instance).Name = value ?? null; }

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

        /// <summary>Set to true if Job is marked as aged.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsAged { get => this._isAged; set => this._isAged = value; }

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

        /// <summary>Indicates if job is soft aged or not.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public bool? IsSoftAged { get => this._isSoftAged; set => this._isSoftAged = value; }

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

        /// <summary>
        /// The jobAttributesEx field is an internal attribute used to construct Admin Console URLs. It contains additional attributes
        /// and information specific to each job.
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? JobAttributesEx { get => this._jobAttributesEx; set => this._jobAttributesEx = value; }

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

        /// <summary>The system-generated Id assigned to the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? JobId { get => this._jobId; set => this._jobId = value; }

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

        /// <summary>Backup level of the Job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string JobType { get => this._jobType; set => this._jobType = value; }

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

        /// <summary>Last DataVerification time</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string LastVerifiedOn { get => this._lastVerifiedOn; set => this._lastVerifiedOn = value; }

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

        /// <summary>Parent JobId in a linked job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? ParentJobId { get => this._parentJobId; set => this._parentJobId = value; }

        /// <summary>Backing field for <see cref="Region" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _region;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName Region { get => (this._region = this._region ?? new Commvault.Powershell.Models.IdName()); set => this._region = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? RegionId { get => ((Commvault.Powershell.Models.IIdNameInternal)Region).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Region).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string RegionName { get => ((Commvault.Powershell.Models.IIdNameInternal)Region).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Region).Name = value ?? null; }

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

        /// <summary>Comma separated list of linked Jobs</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string RequiredByJobs { get => this._requiredByJobs; set => this._requiredByJobs = value; }

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

        /// <summary>The date and time until job should be retained</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? RetainUntil { get => this._retainUntil; set => this._retainUntil = value; }

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

        /// <summary>Reason for retention</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? RetainedBy { get => this._retainedBy; set => this._retainedBy = value; }

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

        /// <summary>Indicates the retained reason string.</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string RetentionCode { get => this._retentionCode; set => this._retentionCode = value; }

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

        /// <summary>Reason for retaining the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string RetentionReason { get => this._retentionReason; set => this._retentionReason = value; }

        /// <summary>Backing field for <see cref="SavingPercentage" /> property.</summary>
        private float? _savingPercentage;

        /// <summary>The percentage of space saved due to deduplication and compression, if employed</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public float? SavingPercentage { get => this._savingPercentage; set => this._savingPercentage = value; }

        /// <summary>Backing field for <see cref="Server" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _server;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName Server { get => (this._server = this._server ?? new Commvault.Powershell.Models.IdName()); set => this._server = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? ServerId { get => ((Commvault.Powershell.Models.IIdNameInternal)Server).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)Server).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string ServerName { get => ((Commvault.Powershell.Models.IIdNameInternal)Server).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)Server).Name = value ?? null; }

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

        /// <summary>The amount of application data that was protected during the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? SizeOfApplication { get => this._sizeOfApplication; set => this._sizeOfApplication = value; }

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

        /// <summary>The date and time the job started</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? StartTime { get => this._startTime; set => this._startTime = value; }

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

        /// <summary>The status of the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Status { get => this._status; set => this._status = value; }

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

        /// <summary>The status id of the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public long? StatusId { get => this._statusId; set => this._statusId = value; }

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

        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [unchecked, expired, do not check, to be checked,
        /// partial checked, successful, failed]
        /// </summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string StrDataVerificationStatus { get => this._strDataVerificationStatus; set => this._strDataVerificationStatus = value; }

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

        /// <summary>String defining reason for retention</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string StrRetainedBy { get => this._strRetainedBy; set => this._strRetainedBy = value; }

        /// <summary>Backing field for <see cref="SubClient" /> property.</summary>
        private Commvault.Powershell.Models.IIdName _subClient;

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        internal Commvault.Powershell.Models.IIdName SubClient { get => (this._subClient = this._subClient ?? new Commvault.Powershell.Models.IdName()); set => this._subClient = value; }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public long? SubClientId { get => ((Commvault.Powershell.Models.IIdNameInternal)SubClient).Id; set => ((Commvault.Powershell.Models.IIdNameInternal)SubClient).Id = value ?? default(long); }

        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Inlined)]
        public string SubClientName { get => ((Commvault.Powershell.Models.IIdNameInternal)SubClient).Name; set => ((Commvault.Powershell.Models.IIdNameInternal)SubClient).Name = value ?? null; }

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

        /// <summary>User who initiated the job</summary>
        [Commvault.Powershell.Origin(Commvault.Powershell.PropertyOrigin.Owned)]
        public string Username { get => this._username; set => this._username = value; }

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

        }
    }
    /// Details of a Job on storage.
    public partial interface IJobDetailForStorage :
        Commvault.Powershell.Runtime.IJsonSerializable
    {
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? AgentTypeId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string AgentTypeName { get; set; }
        /// <summary>Average throughput of the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Average throughput of the job",
        SerializedName = @"avgThroughput",
        PossibleTypes = new [] { typeof(float) })]
        float? AvgThroughput { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? BackupSetId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string BackupSetName { get; set; }
        /// <summary>Auxcopied time</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Auxcopied time",
        SerializedName = @"copiedTime",
        PossibleTypes = new [] { typeof(long) })]
        long? CopiedTime { get; set; }
        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [0 = unchecked, 1 = expired, 2 = do not check, 3
        /// = to be checked, 4 = partial checked, 5 = successful, 6 = failed]
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Specify if Job data is verified by periodic DV jobs. Possible values [0 = unchecked, 1 = expired, 2 = do not check, 3 = to be checked, 4 = partial checked, 5 = successful, 6 = failed]",
        SerializedName = @"dataVerificationStatus",
        PossibleTypes = new [] { typeof(long) })]
        long? DataVerificationStatus { get; set; }
        /// <summary>Size of the data stored on the media.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Size of the data stored on the media.",
        SerializedName = @"dataWritten",
        PossibleTypes = new [] { typeof(long) })]
        long? DataWritten { get; set; }
        /// <summary>Set to true if Job is deduplicated.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Set to true if Job is deduplicated.",
        SerializedName = @"deduplicated",
        PossibleTypes = new [] { typeof(bool) })]
        bool? Deduplicated { get; set; }
        /// <summary>Job description</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Job description",
        SerializedName = @"description",
        PossibleTypes = new [] { typeof(string) })]
        string Description { get; set; }
        /// <summary>The time duration for which the job ran</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The time duration for which the job ran",
        SerializedName = @"duration",
        PossibleTypes = new [] { typeof(long) })]
        long? Duration { get; set; }
        /// <summary>Set to true if Job is encrypted</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Set to true if Job is encrypted",
        SerializedName = @"encrypted",
        PossibleTypes = new [] { typeof(bool) })]
        bool? Encrypted { get; set; }
        /// <summary>The date and time the job ended</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The date and time the job ended",
        SerializedName = @"endTime",
        PossibleTypes = new [] { typeof(long) })]
        long? EndTime { get; set; }
        /// <summary>Set to true if Job is hardware encrypted</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Set to true if Job is hardware encrypted",
        SerializedName = @"hardwareEncrypted",
        PossibleTypes = new [] { typeof(bool) })]
        bool? HardwareEncrypted { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? InstanceId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string InstanceName { get; set; }
        /// <summary>Set to true if Job is marked as aged.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Set to true if Job is marked as aged.",
        SerializedName = @"isAged",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsAged { get; set; }
        /// <summary>Indicates if job is soft aged or not.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Indicates if job is soft aged or not.",
        SerializedName = @"isSoftAged",
        PossibleTypes = new [] { typeof(bool) })]
        bool? IsSoftAged { get; set; }
        /// <summary>
        /// The jobAttributesEx field is an internal attribute used to construct Admin Console URLs. It contains additional attributes
        /// and information specific to each job.
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The jobAttributesEx field is an internal attribute used to construct Admin Console URLs. It contains additional attributes and information specific to each job.",
        SerializedName = @"jobAttributesEx",
        PossibleTypes = new [] { typeof(long) })]
        long? JobAttributesEx { get; set; }
        /// <summary>The system-generated Id assigned to the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The system-generated Id assigned to the job",
        SerializedName = @"jobId",
        PossibleTypes = new [] { typeof(long) })]
        long? JobId { get; set; }
        /// <summary>Backup level of the Job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Backup level of the Job",
        SerializedName = @"jobType",
        PossibleTypes = new [] { typeof(string) })]
        string JobType { get; set; }
        /// <summary>Last DataVerification time</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Last DataVerification time",
        SerializedName = @"lastVerifiedOn",
        PossibleTypes = new [] { typeof(string) })]
        string LastVerifiedOn { get; set; }
        /// <summary>Parent JobId in a linked job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Parent JobId in a linked job",
        SerializedName = @"parentJobId",
        PossibleTypes = new [] { typeof(long) })]
        long? ParentJobId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? RegionId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string RegionName { get; set; }
        /// <summary>Comma separated list of linked Jobs</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Comma separated list of linked Jobs",
        SerializedName = @"requiredByJobs",
        PossibleTypes = new [] { typeof(string) })]
        string RequiredByJobs { get; set; }
        /// <summary>The date and time until job should be retained</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The date and time until job should be retained",
        SerializedName = @"retainUntil",
        PossibleTypes = new [] { typeof(long) })]
        long? RetainUntil { get; set; }
        /// <summary>Reason for retention</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Reason for retention",
        SerializedName = @"retainedBy",
        PossibleTypes = new [] { typeof(long) })]
        long? RetainedBy { get; set; }
        /// <summary>Indicates the retained reason string.</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Indicates the retained reason string.",
        SerializedName = @"retentionCode",
        PossibleTypes = new [] { typeof(string) })]
        string RetentionCode { get; set; }
        /// <summary>Reason for retaining the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Reason for retaining the job",
        SerializedName = @"retentionReason",
        PossibleTypes = new [] { typeof(string) })]
        string RetentionReason { get; set; }
        /// <summary>The percentage of space saved due to deduplication and compression, if employed</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The percentage of space saved due to deduplication and compression, if employed",
        SerializedName = @"savingPercentage",
        PossibleTypes = new [] { typeof(float) })]
        float? SavingPercentage { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? ServerId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string ServerName { get; set; }
        /// <summary>The amount of application data that was protected during the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The amount of application data that was protected during the job",
        SerializedName = @"sizeOfApplication",
        PossibleTypes = new [] { typeof(long) })]
        long? SizeOfApplication { get; set; }
        /// <summary>The date and time the job started</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The date and time the job started",
        SerializedName = @"startTime",
        PossibleTypes = new [] { typeof(long) })]
        long? StartTime { get; set; }
        /// <summary>The status of the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The status of the job",
        SerializedName = @"status",
        PossibleTypes = new [] { typeof(string) })]
        string Status { get; set; }
        /// <summary>The status id of the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"The status id of the job",
        SerializedName = @"statusId",
        PossibleTypes = new [] { typeof(long) })]
        long? StatusId { get; set; }
        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [unchecked, expired, do not check, to be checked,
        /// partial checked, successful, failed]
        /// </summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"Specify if Job data is verified by periodic DV jobs. Possible values [unchecked, expired, do not check, to be checked, partial checked, successful, failed]",
        SerializedName = @"strDataVerificationStatus",
        PossibleTypes = new [] { typeof(string) })]
        string StrDataVerificationStatus { get; set; }
        /// <summary>String defining reason for retention</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"String defining reason for retention",
        SerializedName = @"strRetainedBy",
        PossibleTypes = new [] { typeof(string) })]
        string StrRetainedBy { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"id",
        PossibleTypes = new [] { typeof(long) })]
        long? SubClientId { get; set; }

        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"",
        SerializedName = @"name",
        PossibleTypes = new [] { typeof(string) })]
        string SubClientName { get; set; }
        /// <summary>User who initiated the job</summary>
        [Commvault.Powershell.Runtime.Info(
        Required = false,
        ReadOnly = false,
        Description = @"User who initiated the job",
        SerializedName = @"username",
        PossibleTypes = new [] { typeof(string) })]
        string Username { get; set; }

    }
    /// Details of a Job on storage.
    internal partial interface IJobDetailForStorageInternal

    {
        Commvault.Powershell.Models.IIdName AgentType { get; set; }

        long? AgentTypeId { get; set; }

        string AgentTypeName { get; set; }
        /// <summary>Average throughput of the job</summary>
        float? AvgThroughput { get; set; }

        Commvault.Powershell.Models.IIdName BackupSet { get; set; }

        long? BackupSetId { get; set; }

        string BackupSetName { get; set; }
        /// <summary>Auxcopied time</summary>
        long? CopiedTime { get; set; }
        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [0 = unchecked, 1 = expired, 2 = do not check, 3
        /// = to be checked, 4 = partial checked, 5 = successful, 6 = failed]
        /// </summary>
        long? DataVerificationStatus { get; set; }
        /// <summary>Size of the data stored on the media.</summary>
        long? DataWritten { get; set; }
        /// <summary>Set to true if Job is deduplicated.</summary>
        bool? Deduplicated { get; set; }
        /// <summary>Job description</summary>
        string Description { get; set; }
        /// <summary>The time duration for which the job ran</summary>
        long? Duration { get; set; }
        /// <summary>Set to true if Job is encrypted</summary>
        bool? Encrypted { get; set; }
        /// <summary>The date and time the job ended</summary>
        long? EndTime { get; set; }
        /// <summary>Set to true if Job is hardware encrypted</summary>
        bool? HardwareEncrypted { get; set; }

        Commvault.Powershell.Models.IIdName Instance { get; set; }

        long? InstanceId { get; set; }

        string InstanceName { get; set; }
        /// <summary>Set to true if Job is marked as aged.</summary>
        bool? IsAged { get; set; }
        /// <summary>Indicates if job is soft aged or not.</summary>
        bool? IsSoftAged { get; set; }
        /// <summary>
        /// The jobAttributesEx field is an internal attribute used to construct Admin Console URLs. It contains additional attributes
        /// and information specific to each job.
        /// </summary>
        long? JobAttributesEx { get; set; }
        /// <summary>The system-generated Id assigned to the job</summary>
        long? JobId { get; set; }
        /// <summary>Backup level of the Job</summary>
        string JobType { get; set; }
        /// <summary>Last DataVerification time</summary>
        string LastVerifiedOn { get; set; }
        /// <summary>Parent JobId in a linked job</summary>
        long? ParentJobId { get; set; }

        Commvault.Powershell.Models.IIdName Region { get; set; }

        long? RegionId { get; set; }

        string RegionName { get; set; }
        /// <summary>Comma separated list of linked Jobs</summary>
        string RequiredByJobs { get; set; }
        /// <summary>The date and time until job should be retained</summary>
        long? RetainUntil { get; set; }
        /// <summary>Reason for retention</summary>
        long? RetainedBy { get; set; }
        /// <summary>Indicates the retained reason string.</summary>
        string RetentionCode { get; set; }
        /// <summary>Reason for retaining the job</summary>
        string RetentionReason { get; set; }
        /// <summary>The percentage of space saved due to deduplication and compression, if employed</summary>
        float? SavingPercentage { get; set; }

        Commvault.Powershell.Models.IIdName Server { get; set; }

        long? ServerId { get; set; }

        string ServerName { get; set; }
        /// <summary>The amount of application data that was protected during the job</summary>
        long? SizeOfApplication { get; set; }
        /// <summary>The date and time the job started</summary>
        long? StartTime { get; set; }
        /// <summary>The status of the job</summary>
        string Status { get; set; }
        /// <summary>The status id of the job</summary>
        long? StatusId { get; set; }
        /// <summary>
        /// Specify if Job data is verified by periodic DV jobs. Possible values [unchecked, expired, do not check, to be checked,
        /// partial checked, successful, failed]
        /// </summary>
        string StrDataVerificationStatus { get; set; }
        /// <summary>String defining reason for retention</summary>
        string StrRetainedBy { get; set; }

        Commvault.Powershell.Models.IIdName SubClient { get; set; }

        long? SubClientId { get; set; }

        string SubClientName { get; set; }
        /// <summary>User who initiated the job</summary>
        string Username { get; set; }

    }
}