class Azure::Storage::Mgmt::V2020_08_01_preview::Models::ImmutabilityPolicyProperties

The properties of an ImmutabilityPolicy of a blob container.

Attributes

allow_protected_append_writes[RW]

@return [Boolean] This property can only be changed for unlocked 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

etag[RW]

@return [String] ImmutabilityPolicy Etag.

immutability_period_since_creation_in_days[RW]

@return [Integer] The immutability period for the blobs in the container since the policy creation, in days.

state[RW]

@return [ImmutabilityPolicyState] The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked. Possible values include: 'Locked', 'Unlocked'

update_history[RW]

@return [Array<UpdateHistoryProperty>] The ImmutabilityPolicy update history of the blob container.

Public Class Methods

mapper() click to toggle source

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

# File lib/2020-08-01-preview/generated/azure_mgmt_storage/models/immutability_policy_properties.rb, line 44
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'ImmutabilityPolicyProperties',
    type: {
      name: 'Composite',
      class_name: 'ImmutabilityPolicyProperties',
      model_properties: {
        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'
          }
        },
        etag: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'etag',
          type: {
            name: 'String'
          }
        },
        update_history: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'updateHistory',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'UpdateHistoryPropertyElementType',
                type: {
                  name: 'Composite',
                  class_name: 'UpdateHistoryProperty'
                }
            }
          }
        }
      }
    }
  }
end