class Azure::CDN::Mgmt::V2020_09_01::Models::Rule

Friendly Rules name mapping to the any Rules or secret related information.

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

deployment_status[RW]

@return [DeploymentStatus] Possible values include: 'NotStarted', 'InProgress', 'Succeeded', 'Failed'

match_processing_behavior[RW]

@return [MatchProcessingBehavior] If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue. Possible values include: 'Continue', 'Stop'

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.

provisioning_state[RW]

@return [AfdProvisioningState] Provisioning status. Possible values include: 'Succeeded', 'Failed', 'Updating', 'Deleting', 'Creating'

Private Class Methods

mapper() click to toggle source

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

# File lib/2020-09-01/generated/azure_mgmt_cdn/models/rule.rb, line 50
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'Rule',
    type: {
      name: 'Composite',
      class_name: 'Rule',
      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'
          }
        },
        system_data: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'systemData',
          type: {
            name: 'Composite',
            class_name: 'SystemData'
          }
        },
        order: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.order',
          type: {
            name: 'Number'
          }
        },
        conditions: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.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'
                }
            }
          }
        },
        actions: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.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'
                }
            }
          }
        },
        match_processing_behavior: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.matchProcessingBehavior',
          type: {
            name: 'String'
          }
        },
        provisioning_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.provisioningState',
          type: {
            name: 'String'
          }
        },
        deployment_status: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.deploymentStatus',
          type: {
            name: 'String'
          }
        }
      }
    }
  }
end