Class: Azure::RecoveryServicesBackup::Mgmt::V2019_06_15::Models::SubProtectionPolicy

Inherits:
Object
  • Object
show all
Includes:
MsRestAzure
Defined in:
lib/2019-06-15/generated/azure_mgmt_recovery_services_backup/models/sub_protection_policy.rb

Overview

Sub-protection policy which includes schedule and retention

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#policy_typePolicyType

include: ‘Invalid’, ‘Full’, ‘Differential’, ‘Log’, ‘CopyOnlyFull’

Returns:

  • (PolicyType)

    Type of backup policy type. Possible values



17
18
19
# File 'lib/2019-06-15/generated/azure_mgmt_recovery_services_backup/models/sub_protection_policy.rb', line 17

def policy_type
  @policy_type
end

#retention_policyRetentionPolicy

copy retention ranges.

Returns:



25
26
27
# File 'lib/2019-06-15/generated/azure_mgmt_recovery_services_backup/models/sub_protection_policy.rb', line 25

def retention_policy
  @retention_policy
end

#schedule_policySchedulePolicy

policy.

Returns:



21
22
23
# File 'lib/2019-06-15/generated/azure_mgmt_recovery_services_backup/models/sub_protection_policy.rb', line 21

def schedule_policy
  @schedule_policy
end

Class Method Details

.mapperObject

Mapper for SubProtectionPolicy class as Ruby Hash. This will be used for serialization/deserialization.



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/2019-06-15/generated/azure_mgmt_recovery_services_backup/models/sub_protection_policy.rb', line 32

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'SubProtectionPolicy',
    type: {
      name: 'Composite',
      class_name: 'SubProtectionPolicy',
      model_properties: {
        policy_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'policyType',
          type: {
            name: 'String'
          }
        },
        schedule_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'schedulePolicy',
          type: {
            name: 'Composite',
            polymorphic_discriminator: 'schedulePolicyType',
            uber_parent: 'SchedulePolicy',
            class_name: 'SchedulePolicy'
          }
        },
        retention_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'retentionPolicy',
          type: {
            name: 'Composite',
            polymorphic_discriminator: 'retentionPolicyType',
            uber_parent: 'RetentionPolicy',
            class_name: 'RetentionPolicy'
          }
        }
      }
    }
  }
end