class Azure::Storage::Mgmt::V2020_08_01_preview::Models::ObjectReplicationPolicy

The replication policy between two storage accounts. Multiple rules can be defined in one policy.

Attributes

destination_account[RW]

@return [String] Required. Destination account name.

enabled_time[RW]

@return [DateTime] Indicates when the policy is enabled on the source account.

policy_id[RW]

@return [String] A unique id for object replication policy.

rules[RW]

@return [Array<ObjectReplicationPolicyRule>] The storage account object replication rules.

source_account[RW]

@return [String] Required. Source account name.

Public Class Methods

mapper() click to toggle source

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

# File lib/2020-08-01-preview/generated/azure_mgmt_storage/models/object_replication_policy.rb, line 38
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'ObjectReplicationPolicy',
    type: {
      name: 'Composite',
      class_name: 'ObjectReplicationPolicy',
      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'
          }
        },
        policy_id: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.policyId',
          type: {
            name: 'String'
          }
        },
        enabled_time: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.enabledTime',
          type: {
            name: 'DateTime'
          }
        },
        source_account: {
          client_side_validation: true,
          required: true,
          serialized_name: 'properties.sourceAccount',
          type: {
            name: 'String'
          }
        },
        destination_account: {
          client_side_validation: true,
          required: true,
          serialized_name: 'properties.destinationAccount',
          type: {
            name: 'String'
          }
        },
        rules: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.rules',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'ObjectReplicationPolicyRuleElementType',
                type: {
                  name: 'Composite',
                  class_name: 'ObjectReplicationPolicyRule'
                }
            }
          }
        }
      }
    }
  }
end