class Azure::CDN::Mgmt::V2017_10_12::Models::DeliveryRule

A rule that specifies a set of actions and conditions

Attributes

actions[RW]

@return [Array<DeliveryRuleAction>] A list of actions that are executed when all the conditions of a rule are satisfied.

conditions[RW]

@return [Array<DeliveryRuleCondition>] A list of conditions that must be matched for the actions to be executed

order[RW]

@return [Integer] The order in which the rules are applied for the endpoint. Possible values {0,1,2,3,………}. A rule with a lesser order will be applied before a rule with a greater order. Rule with order 0 is a special rule. It does not require any condition and actions listed in it will always be applied.

Public Class Methods

mapper() click to toggle source

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

# File lib/2017-10-12/generated/azure_mgmt_cdn/models/delivery_rule.rb, line 35
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'DeliveryRule',
    type: {
      name: 'Composite',
      class_name: 'DeliveryRule',
      model_properties: {
        order: {
          client_side_validation: true,
          required: true,
          serialized_name: 'order',
          type: {
            name: 'Number'
          }
        },
        actions: {
          client_side_validation: true,
          required: true,
          serialized_name: 'actions',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'DeliveryRuleActionElementType',
                type: {
                  name: 'Composite',
                  polymorphic_discriminator: 'name',
                  uber_parent: 'DeliveryRuleAction',
                  class_name: 'DeliveryRuleAction'
                }
            }
          }
        },
        conditions: {
          client_side_validation: true,
          required: false,
          serialized_name: 'conditions',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'DeliveryRuleConditionElementType',
                type: {
                  name: 'Composite',
                  polymorphic_discriminator: 'name',
                  uber_parent: 'DeliveryRuleCondition',
                  class_name: 'DeliveryRuleCondition'
                }
            }
          }
        }
      }
    }
  }
end