Exemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BackupRun" /> class.
 /// </summary>
 /// <param name="environment">Specifies the environment type that the task is protecting. Supported environment types such as &#39;kView&#39;, &#39;kSQL&#39;, &#39;kVMware&#39;, etc. NOTE: &#39;kPuppeteer&#39; refers to Cohesity&#39;s Remote Adapter. &#39;kVMware&#39; indicates the VMware Protection Source environment. &#39;kHyperV&#39; indicates the HyperV Protection Source environment. &#39;kSQL&#39; indicates the SQL Protection Source environment. &#39;kView&#39; indicates the View Protection Source environment. &#39;kPuppeteer&#39; indicates the Cohesity&#39;s Remote Adapter. &#39;kPhysical&#39; indicates the physical Protection Source environment. &#39;kPure&#39; indicates the Pure Storage Protection Source environment. &#39;Nimble&#39; indicates the Nimble Storage Protection Source environment. &#39;kAzure&#39; indicates the Microsoft&#39;s Azure Protection Source environment. &#39;kNetapp&#39; indicates the Netapp Protection Source environment. &#39;kAgent&#39; indicates the Agent Protection Source environment. &#39;kGenericNas&#39; indicates the Genreric Network Attached Storage Protection Source environment. &#39;kAcropolis&#39; indicates the Acropolis Protection Source environment. &#39;kPhsicalFiles&#39; indicates the Physical Files Protection Source environment. &#39;kIsilon&#39; indicates the Dell EMC&#39;s Isilon Protection Source environment. &#39;kGPFS&#39; indicates IBM&#39;s GPFS Protection Source environment. &#39;kKVM&#39; indicates the KVM Protection Source environment. &#39;kAWS&#39; indicates the AWS Protection Source environment. &#39;kExchange&#39; indicates the Exchange Protection Source environment. &#39;kHyperVVSS&#39; indicates the HyperV VSS Protection Source environment. &#39;kOracle&#39; indicates the Oracle Protection Source environment. &#39;kGCP&#39; indicates the Google Cloud Platform Protection Source environment. &#39;kFlashBlade&#39; indicates the Flash Blade Protection Source environment. &#39;kAWSNative&#39; indicates the AWS Native Protection Source environment. &#39;kVCD&#39; indicates the VMware&#39;s Virtual cloud Director Protection Source environment. &#39;kO365&#39; indicates the Office 365 Protection Source environment. &#39;kO365Outlook&#39; indicates Office 365 outlook Protection Source environment. &#39;kHyperFlex&#39; indicates the Hyper Flex Protection Source environment. &#39;kGCPNative&#39; indicates the GCP Native Protection Source environment. &#39;kAzureNative&#39; indicates the Azure Native Protection Source environment. &#39;kKubernetes&#39; indicates a Kubernetes Protection Source environment. &#39;kElastifile&#39; indicates Elastifile Protection Source environment..</param>
 /// <param name="error">Specifies if an error occurred (if any) while running this task. This field is populated when the status is equal to &#39;kFailure&#39;..</param>
 /// <param name="jobRunId">Specifies the id of the Job Run that ran the backup task and the copy tasks..</param>
 /// <param name="message">Specifies a message after finishing the task successfully. This field is optionally populated when the status is equal to &#39;kSuccess&#39;..</param>
 /// <param name="metadataDeleted">Specifies if the metadata and snapshots associated with this Job Run have been deleted. This field is set to true when the snapshots, which are marked for deletion, are removed by garbage collection. The associated metadata is also deleted..</param>
 /// <param name="quiesced">Specifies if app-consistent snapshot was captured. This field is set to true, if an app-consistent snapshot was taken by quiescing applications and the file system before taking a backup..</param>
 /// <param name="runType">Specifies the type of backup such as &#39;kRegular&#39;, &#39;kFull&#39;, &#39;kLog&#39; or &#39;kSystem&#39;. &#39;kRegular&#39; indicates a incremental (CBT) backup. Incremental backups utilizing CBT (if supported) are captured of the target protection objects. The first run of a kRegular schedule captures all the blocks. &#39;kFull&#39; indicates a full (no CBT) backup. A complete backup (all blocks) of the target protection objects are always captured and Change Block Tracking (CBT) is not utilized. &#39;kLog&#39; indicates a Database Log backup. Capture the database transaction logs to allow rolling back to a specific point in time. &#39;kSystem&#39; indicates a system backup. System backups are used to do bare metal recovery of the system to a specific point in time..</param>
 /// <param name="slaViolated">Specifies if the SLA was violated for the Job Run. This field is set to true, if time to complete the Job Run is longer than the SLA specified. This field is populated when the status is set to &#39;kSuccess&#39; or &#39;kFailure&#39;..</param>
 /// <param name="snapshotsDeleted">Specifies if backup snapshots associated with this Job Run have been marked for deletion because of the retention settings in the Policy or if they were manually deleted from the Cohesity Dashboard..</param>
 /// <param name="snapshotsDeletedTimeUsecs">Specifies if backup snapshots associated with this Job Run have been marked for deletion because of the retention settings in the Policy or if they were manually deleted from the Cohesity Dashboard..</param>
 /// <param name="sourceBackupStatus">Array of Source Object Backup Status.  Specifies the status of backing up each source objects (such as VMs) associated with the job..</param>
 /// <param name="stats">stats.</param>
 /// <param name="status">Specifies the status of Backup task such as &#39;kRunning&#39;, &#39;kSuccess&#39;, &#39;kFailure&#39; etc. &#39;kAccepted&#39; indicates the task is queued to run but not yet running. &#39;kRunning&#39; indicates the task is running. &#39;kCanceling&#39; indicates a request to cancel the task has occurred but the task is not yet canceled. &#39;kCanceled&#39; indicates the task has been canceled. &#39;kSuccess&#39; indicates the task was successful. &#39;kFailure&#39; indicates the task failed..</param>
 /// <param name="warnings">Array of Warnings.  Specifies the warnings that occurred (if any) while running this task..</param>
 /// <param name="wormRetentionType">Specifies WORM retention type for the snapshot as given by the policy. When a WORM retention type is specified, the snapshot will be kept until the maximum of the snapshot retention time. During that time, the snapshot cannot be deleted. &#39;kNone&#39; implies there is no WORM retention set. &#39;kCompliance&#39; implies WORM retention is set for compliance reason. &#39;kAdministrative&#39; implies WORM retention is set for administrative purposes..</param>
 public BackupRun(EnvironmentEnum?environment = default(EnvironmentEnum?), string error = default(string), long?jobRunId = default(long?), string message = default(string), bool?metadataDeleted = default(bool?), bool?quiesced = default(bool?), RunTypeEnum?runType = default(RunTypeEnum?), bool?slaViolated = default(bool?), bool?snapshotsDeleted = default(bool?), long?snapshotsDeletedTimeUsecs = default(long?), List <SourceBackupStatus> sourceBackupStatus = default(List <SourceBackupStatus>), ProtectionJobRunStats stats = default(ProtectionJobRunStats), StatusEnum?status = default(StatusEnum?), List <string> warnings = default(List <string>), WormRetentionTypeEnum?wormRetentionType = default(WormRetentionTypeEnum?))
 {
     this.Environment               = environment;
     this.Error                     = error;
     this.JobRunId                  = jobRunId;
     this.Message                   = message;
     this.MetadataDeleted           = metadataDeleted;
     this.Quiesced                  = quiesced;
     this.RunType                   = runType;
     this.SlaViolated               = slaViolated;
     this.SnapshotsDeleted          = snapshotsDeleted;
     this.SnapshotsDeletedTimeUsecs = snapshotsDeletedTimeUsecs;
     this.SourceBackupStatus        = sourceBackupStatus;
     this.Status                    = status;
     this.Warnings                  = warnings;
     this.WormRetentionType         = wormRetentionType;
     this.Environment               = environment;
     this.Error                     = error;
     this.JobRunId                  = jobRunId;
     this.Message                   = message;
     this.MetadataDeleted           = metadataDeleted;
     this.Quiesced                  = quiesced;
     this.RunType                   = runType;
     this.SlaViolated               = slaViolated;
     this.SnapshotsDeleted          = snapshotsDeleted;
     this.SnapshotsDeletedTimeUsecs = snapshotsDeletedTimeUsecs;
     this.SourceBackupStatus        = sourceBackupStatus;
     this.Stats                     = stats;
     this.Status                    = status;
     this.Warnings                  = warnings;
     this.WormRetentionType         = wormRetentionType;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="DataMigrationPolicy" /> class.
 /// </summary>
 /// <param name="daysToKeep">Specifies how many days to retain Snapshots on the Cohesity Cluster..</param>
 /// <param name="schedulingPolicy">schedulingPolicy.</param>
 /// <param name="wormRetentionType">Specifies WORM retention type for the files. When a WORM retention type is specified, the files will be kept until the maximum of the retention time. During that time, the files cannot be deleted. &#39;kNone&#39; implies there is no WORM retention set. &#39;kCompliance&#39; implies WORM retention is set for compliance reason. &#39;kAdministrative&#39; implies WORM retention is set for administrative purposes..</param>
 public DataMigrationPolicy(long?daysToKeep = default(long?), SchedulingPolicy schedulingPolicy = default(SchedulingPolicy), WormRetentionTypeEnum?wormRetentionType = default(WormRetentionTypeEnum?))
 {
     this.DaysToKeep        = daysToKeep;
     this.WormRetentionType = wormRetentionType;
     this.DaysToKeep        = daysToKeep;
     this.SchedulingPolicy  = schedulingPolicy;
     this.WormRetentionType = wormRetentionType;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ProtectionPolicy" /> class.
 /// </summary>
 /// <param name="blackoutPeriods">Array of Blackout Periods.  If specified, this field defines black periods when new Job Runs are not started. If a Job Run has been scheduled but not yet executed and the blackout period starts, the behavior depends on the policy field AbortInBlackoutPeriod..</param>
 /// <param name="cdpSchedulingPolicy">cdpSchedulingPolicy.</param>
 /// <param name="cloudDeployPolicies">Array of Cloud Deploy Policies.  Specifies settings for copying Snapshots to Cloud. CloudDeploy target where backup snapshots may be converted and stored. It also defines the retention of copied Snapshots on the Cloud..</param>
 /// <param name="daysToKeep">Specifies how many days to retain Snapshots on the Cohesity Cluster..</param>
 /// <param name="daysToKeepLog">Specifies the number of days to retain log run if Log Schedule exists..</param>
 /// <param name="daysToKeepSystem">Specifies the number of days to retain system backups made for bare metal recovery. This field is applicable if systemSchedulingPolicy is specified..</param>
 /// <param name="description">Description of the Protection Policy..</param>
 /// <param name="extendedRetentionPolicies">Specifies additional retention policies that should be applied to the backup snapshots. A backup snapshot will be retained up to a time that is the maximum of all retention policies that are applicable to it..</param>
 /// <param name="fullSchedulingPolicy">Specifies the Full (no CBT) backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster..</param>
 /// <param name="id">Specifies a unique Policy id assigned by the Cohesity Cluster..</param>
 /// <param name="incrementalSchedulingPolicy">Specifies the CBT-based backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster..</param>
 /// <param name="isUsable">Specifies if the policy can be used to create a job..</param>
 /// <param name="lastModifiedTimeMsecs">Specifies the epoch time (in milliseconds) when the Protection Policy was last modified..</param>
 /// <param name="logSchedulingPolicy">logSchedulingPolicy.</param>
 /// <param name="name">Specifies the name of the Protection Policy..</param>
 /// <param name="numLinkedPolicies">Species the number of policies linked to a global policy..</param>
 /// <param name="parentPolicyId">Specifies the parent global policy Id. This must be specified when creating a policy from global policy template..</param>
 /// <param name="retries">Specifies the number of times to retry capturing Snapshots before the Job Run fails..</param>
 /// <param name="retryIntervalMins">Specifies the number of minutes before retrying a failed Protection Job..</param>
 /// <param name="rpoPolicySettings">rpoPolicySettings.</param>
 /// <param name="skipIntervalMins">Specifies the period of time before skipping the execution of new Job Runs if an existing queued Job Run of the same Protection Job has not started. For example if this field is set to 30 minutes and a Job Run is scheduled to start at 5:00 AM every day but does not start due to conflicts (such as too many Jobs are running). If the new Job Run does not start by 5:30AM, the Cohesity Cluster will skip the new Job Run. If the original Job Run completes before 5:30AM the next day, a new Job Run is created and starts executing. This field is optional..</param>
 /// <param name="snapshotArchivalCopyPolicies">Array of External Targets.  Specifies settings for copying Snapshots to  Archival External Targets (such as AWS or Tape). It also defines the retention of copied Snapshots on an External Targets such as AWS and Tape..</param>
 /// <param name="snapshotReplicationCopyPolicies">Array of Remote Clusters.  Specifies settings for copying Snapshots to Remote Clusters. It also defines the retention of copied Snapshots on a Remote Cluster..</param>
 /// <param name="systemSchedulingPolicy">systemSchedulingPolicy.</param>
 /// <param name="tenantIds">Specifies which organizations have been assigned this policy. This value is only populated for the cluster admin for now..</param>
 /// <param name="type">Specifies the type of the protection policy. &#39;kRegular&#39; means a regular Protection Policy. &#39;kRPO&#39; means an RPO Protection Policy..</param>
 /// <param name="wormRetentionType">Specifies WORM retention type for the snapshots. When a WORM retention type is specified, the snapshots of the Protection Jobs using this policy will be kept until the maximum of the snapshot retention time. During that time, the snapshots cannot be deleted. &#39;kNone&#39; implies there is no WORM retention set. &#39;kCompliance&#39; implies WORM retention is set for compliance reason. &#39;kAdministrative&#39; implies WORM retention is set for administrative purposes..</param>
 public ProtectionPolicy(List <BlackoutPeriod> blackoutPeriods = default(List <BlackoutPeriod>), SchedulingPolicy cdpSchedulingPolicy = default(SchedulingPolicy), List <SnapshotCloudCopyPolicy> cloudDeployPolicies = default(List <SnapshotCloudCopyPolicy>), long?daysToKeep = default(long?), long?daysToKeepLog = default(long?), long?daysToKeepSystem = default(long?), string description = default(string), List <ExtendedRetentionPolicy> extendedRetentionPolicies = default(List <ExtendedRetentionPolicy>), SchedulingPolicy fullSchedulingPolicy = default(SchedulingPolicy), string id = default(string), SchedulingPolicy incrementalSchedulingPolicy = default(SchedulingPolicy), bool?isUsable = default(bool?), long?lastModifiedTimeMsecs = default(long?), SchedulingPolicy logSchedulingPolicy = default(SchedulingPolicy), string name = default(string), long?numLinkedPolicies = default(long?), string parentPolicyId = default(string), int?retries = default(int?), int?retryIntervalMins = default(int?), RpoPolicySettings rpoPolicySettings = default(RpoPolicySettings), int?skipIntervalMins = default(int?), List <SnapshotArchivalCopyPolicy> snapshotArchivalCopyPolicies = default(List <SnapshotArchivalCopyPolicy>), List <SnapshotReplicationCopyPolicy> snapshotReplicationCopyPolicies = default(List <SnapshotReplicationCopyPolicy>), SchedulingPolicy systemSchedulingPolicy = default(SchedulingPolicy), List <string> tenantIds = default(List <string>), TypeEnum?type = default(TypeEnum?), WormRetentionTypeEnum?wormRetentionType = default(WormRetentionTypeEnum?))
 {
     this.BlackoutPeriods           = blackoutPeriods;
     this.CloudDeployPolicies       = cloudDeployPolicies;
     this.DaysToKeep                = daysToKeep;
     this.DaysToKeepLog             = daysToKeepLog;
     this.DaysToKeepSystem          = daysToKeepSystem;
     this.Description               = description;
     this.ExtendedRetentionPolicies = extendedRetentionPolicies;
     this.FullSchedulingPolicy      = fullSchedulingPolicy;
     this.Id = id;
     this.IncrementalSchedulingPolicy = incrementalSchedulingPolicy;
     this.IsUsable = isUsable;
     this.LastModifiedTimeMsecs = lastModifiedTimeMsecs;
     this.Name = name;
     this.NumLinkedPolicies               = numLinkedPolicies;
     this.ParentPolicyId                  = parentPolicyId;
     this.Retries                         = retries;
     this.RetryIntervalMins               = retryIntervalMins;
     this.SkipIntervalMins                = skipIntervalMins;
     this.SnapshotArchivalCopyPolicies    = snapshotArchivalCopyPolicies;
     this.SnapshotReplicationCopyPolicies = snapshotReplicationCopyPolicies;
     this.TenantIds                       = tenantIds;
     this.Type = type;
     this.WormRetentionType         = wormRetentionType;
     this.BlackoutPeriods           = blackoutPeriods;
     this.CdpSchedulingPolicy       = cdpSchedulingPolicy;
     this.CloudDeployPolicies       = cloudDeployPolicies;
     this.DaysToKeep                = daysToKeep;
     this.DaysToKeepLog             = daysToKeepLog;
     this.DaysToKeepSystem          = daysToKeepSystem;
     this.Description               = description;
     this.ExtendedRetentionPolicies = extendedRetentionPolicies;
     this.FullSchedulingPolicy      = fullSchedulingPolicy;
     this.Id = id;
     this.IncrementalSchedulingPolicy = incrementalSchedulingPolicy;
     this.IsUsable = isUsable;
     this.LastModifiedTimeMsecs = lastModifiedTimeMsecs;
     this.LogSchedulingPolicy   = logSchedulingPolicy;
     this.Name = name;
     this.NumLinkedPolicies               = numLinkedPolicies;
     this.ParentPolicyId                  = parentPolicyId;
     this.Retries                         = retries;
     this.RetryIntervalMins               = retryIntervalMins;
     this.RpoPolicySettings               = rpoPolicySettings;
     this.SkipIntervalMins                = skipIntervalMins;
     this.SnapshotArchivalCopyPolicies    = snapshotArchivalCopyPolicies;
     this.SnapshotReplicationCopyPolicies = snapshotReplicationCopyPolicies;
     this.SystemSchedulingPolicy          = systemSchedulingPolicy;
     this.TenantIds                       = tenantIds;
     this.Type = type;
     this.WormRetentionType = wormRetentionType;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ProtectionPolicyRequest" /> class.
 /// </summary>
 /// <param name="blackoutPeriods">Array of Blackout Periods.  If specified, this field defines black periods when new Job Runs are not started. If a Job Run has been scheduled but not yet executed and the blackout period starts, the behavior depends on the policy field AbortInBlackoutPeriod..</param>
 /// <param name="cloudDeployPolicies">Array of Cloud Deploy Policies.  Specifies settings for copying Snapshots to Cloud. CloudDeploy target where backup snapshots may be converted and stored. It also defines the retention of copied Snapshots on the Cloud..</param>
 /// <param name="daysToKeep">Specifies how many days to retain Snapshots on the Cohesity Cluster..</param>
 /// <param name="daysToKeepLog">Specifies the number of days to retain log run if Log Schedule exists..</param>
 /// <param name="daysToKeepSystem">Specifies the number of days to retain system backups made for bare metal recovery. This field is applicable if systemSchedulingPolicy is specified..</param>
 /// <param name="description">Description of the Protection Policy..</param>
 /// <param name="extendedRetentionPolicies">Specifies additional retention policies that should be applied to the backup snapshots. A backup snapshot will be retained up to a time that is the maximum of all retention policies that are applicable to it..</param>
 /// <param name="fullSchedulingPolicy">Specifies the Full (no CBT) backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster..</param>
 /// <param name="incrementalSchedulingPolicy">Specifies the CBT-based backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster..</param>
 /// <param name="logSchedulingPolicy">logSchedulingPolicy.</param>
 /// <param name="name">Specifies the name of the Protection Policy..</param>
 /// <param name="numLinkedPolicies">Species the number of policies linked to a global policy..</param>
 /// <param name="retries">Specifies the number of times to retry capturing Snapshots before the Job Run fails..</param>
 /// <param name="retryIntervalMins">Specifies the number of minutes before retrying a failed Protection Job..</param>
 /// <param name="rpoPolicySettings">rpoPolicySettings.</param>
 /// <param name="skipIntervalMins">Specifies the period of time before skipping the execution of new Job Runs if an existing queued Job Run of the same Protection Job has not started. For example if this field is set to 30 minutes and a Job Run is scheduled to start at 5:00 AM every day but does not start due to conflicts (such as too many Jobs are running). If the new Job Run does not start by 5:30AM, the Cohesity Cluster will skip the new Job Run. If the original Job Run completes before 5:30AM the next day, a new Job Run is created and starts executing. This field is optional..</param>
 /// <param name="snapshotArchivalCopyPolicies">Array of External Targets.  Specifies settings for copying Snapshots to  Archival External Targets (such as AWS or Tape). It also defines the retention of copied Snapshots on an External Targets such as AWS and Tape..</param>
 /// <param name="snapshotReplicationCopyPolicies">Array of Remote Clusters.  Specifies settings for copying Snapshots to Remote Clusters. It also defines the retention of copied Snapshots on a Remote Cluster..</param>
 /// <param name="systemSchedulingPolicy">systemSchedulingPolicy.</param>
 /// <param name="type">Specifies the type of the protection policy. &#39;kRegular&#39; means a regular Protection Policy. &#39;kRPO&#39; means an RPO Protection Policy..</param>
 /// <param name="wormRetentionType">Specifies WORM retention type for the snapshots. When a WORM retention type is specified, the snapshots of the Protection Jobs using this policy will be kept until the maximum of the snapshot retention time. During that time, the snapshots cannot be deleted. &#39;kNone&#39; implies there is no WORM retention set. &#39;kCompliance&#39; implies WORM retention is set for compliance reason. &#39;kAdministrative&#39; implies WORM retention is set for administrative purposes..</param>
 public ProtectionPolicyRequest(List <BlackoutPeriod> blackoutPeriods = default(List <BlackoutPeriod>), List <SnapshotCloudCopyPolicy> cloudDeployPolicies = default(List <SnapshotCloudCopyPolicy>), long?daysToKeep = default(long?), long?daysToKeepLog = default(long?), long?daysToKeepSystem = default(long?), string description = default(string), List <ExtendedRetentionPolicy> extendedRetentionPolicies = default(List <ExtendedRetentionPolicy>), SchedulingPolicy fullSchedulingPolicy = default(SchedulingPolicy), SchedulingPolicy incrementalSchedulingPolicy = default(SchedulingPolicy), SchedulingPolicy logSchedulingPolicy = default(SchedulingPolicy), string name = default(string), long?numLinkedPolicies = default(long?), int?retries = default(int?), int?retryIntervalMins = default(int?), RpoPolicySettings rpoPolicySettings = default(RpoPolicySettings), int?skipIntervalMins = default(int?), List <SnapshotArchivalCopyPolicy> snapshotArchivalCopyPolicies = default(List <SnapshotArchivalCopyPolicy>), List <SnapshotReplicationCopyPolicy> snapshotReplicationCopyPolicies = default(List <SnapshotReplicationCopyPolicy>), SchedulingPolicy systemSchedulingPolicy = default(SchedulingPolicy), TypeEnum?type = default(TypeEnum?), WormRetentionTypeEnum?wormRetentionType = default(WormRetentionTypeEnum?))
 {
     this.BlackoutPeriods             = blackoutPeriods;
     this.CloudDeployPolicies         = cloudDeployPolicies;
     this.DaysToKeep                  = daysToKeep;
     this.DaysToKeepLog               = daysToKeepLog;
     this.DaysToKeepSystem            = daysToKeepSystem;
     this.Description                 = description;
     this.ExtendedRetentionPolicies   = extendedRetentionPolicies;
     this.FullSchedulingPolicy        = fullSchedulingPolicy;
     this.IncrementalSchedulingPolicy = incrementalSchedulingPolicy;
     this.Name = name;
     this.NumLinkedPolicies               = numLinkedPolicies;
     this.Retries                         = retries;
     this.RetryIntervalMins               = retryIntervalMins;
     this.SkipIntervalMins                = skipIntervalMins;
     this.SnapshotArchivalCopyPolicies    = snapshotArchivalCopyPolicies;
     this.SnapshotReplicationCopyPolicies = snapshotReplicationCopyPolicies;
     this.Type = type;
     this.WormRetentionType           = wormRetentionType;
     this.BlackoutPeriods             = blackoutPeriods;
     this.CloudDeployPolicies         = cloudDeployPolicies;
     this.DaysToKeep                  = daysToKeep;
     this.DaysToKeepLog               = daysToKeepLog;
     this.DaysToKeepSystem            = daysToKeepSystem;
     this.Description                 = description;
     this.ExtendedRetentionPolicies   = extendedRetentionPolicies;
     this.FullSchedulingPolicy        = fullSchedulingPolicy;
     this.IncrementalSchedulingPolicy = incrementalSchedulingPolicy;
     this.LogSchedulingPolicy         = logSchedulingPolicy;
     this.Name = name;
     this.NumLinkedPolicies               = numLinkedPolicies;
     this.Retries                         = retries;
     this.RetryIntervalMins               = retryIntervalMins;
     this.RpoPolicySettings               = rpoPolicySettings;
     this.SkipIntervalMins                = skipIntervalMins;
     this.SnapshotArchivalCopyPolicies    = snapshotArchivalCopyPolicies;
     this.SnapshotReplicationCopyPolicies = snapshotReplicationCopyPolicies;
     this.SystemSchedulingPolicy          = systemSchedulingPolicy;
     this.Type = type;
     this.WormRetentionType = wormRetentionType;
 }