Class: Azure::Storage::Mgmt::V2019_06_01::Models::ImmutabilityPolicy

Inherits:
AzureEntityResource show all
Includes:
MsRestAzure
Defined in:
lib/2019-06-01/generated/azure_mgmt_storage/models/immutability_policy.rb

Overview

The ImmutabilityPolicy property of a blob container, including Id, resource name, resource type, Etag.

Instance Attribute Summary collapse

Attributes inherited from AzureEntityResource

#etag

Attributes inherited from Resource

#id, #name, #type

Class Method Summary collapse

Methods inherited from Resource

#resource_group

Instance Attribute Details

#allow_protected_append_writesBoolean

time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API

Returns:

  • (Boolean)

    This property can only be changed for unlocked



31
32
33
# File 'lib/2019-06-01/generated/azure_mgmt_storage/models/immutability_policy.rb', line 31

def allow_protected_append_writes
  @allow_protected_append_writes
end

#immutability_period_since_creation_in_daysInteger

container since the policy creation, in days.

Returns:

  • (Integer)

    The immutability period for the blobs in the



18
19
20
# File 'lib/2019-06-01/generated/azure_mgmt_storage/models/immutability_policy.rb', line 18

def immutability_period_since_creation_in_days
  @immutability_period_since_creation_in_days
end

#stateImmutabilityPolicyState

blob container, possible values include: Locked and Unlocked. Possible values include: ‘Locked’, ‘Unlocked’

Returns:



23
24
25
# File 'lib/2019-06-01/generated/azure_mgmt_storage/models/immutability_policy.rb', line 23

def state
  @state
end

Class Method Details

.mapperObject

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



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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/2019-06-01/generated/azure_mgmt_storage/models/immutability_policy.rb', line 38

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'ImmutabilityPolicy',
    type: {
      name: 'Composite',
      class_name: 'ImmutabilityPolicy',
      model_properties: {
        id: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'id',
          type: {
            name: 'String'
          }
        },
        name: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'name',
          type: {
            name: 'String'
          }
        },
        type: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'type',
          type: {
            name: 'String'
          }
        },
        etag: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'etag',
          type: {
            name: 'String'
          }
        },
        immutability_period_since_creation_in_days: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.immutabilityPeriodSinceCreationInDays',
          type: {
            name: 'Number'
          }
        },
        state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.state',
          type: {
            name: 'String'
          }
        },
        allow_protected_append_writes: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.allowProtectedAppendWrites',
          type: {
            name: 'Boolean'
          }
        }
      }
    }
  }
end