class Azure::EventGrid::Mgmt::V2020_01_01_preview::Models::EventSubscription

Event Subscription

Attributes

dead_letter_destination[RW]

@return [DeadLetterDestination] The DeadLetter destination of the event subscription.

destination[RW]

@return [EventSubscriptionDestination] Information about the destination where events have to be delivered for the event subscription.

event_delivery_schema[RW]

@return [EventDeliverySchema] The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CustomInputSchema', 'CloudEventSchemaV1_0'

expiration_time_utc[RW]

@return [DateTime] Expiration time of the event subscription.

filter[RW]

@return [EventSubscriptionFilter] Information about the filter for the event subscription.

labels[RW]

@return [Array<String>] List of user defined labels.

provisioning_state[RW]

@return [EventSubscriptionProvisioningState] Provisioning state of the event subscription. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed', 'AwaitingManualAction'

retry_policy[RW]

@return [RetryPolicy] The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.

topic[RW]

@return [String] Name of the topic of the event subscription.

Public Class Methods

mapper() click to toggle source

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

# File lib/2020-01-01-preview/generated/azure_mgmt_event_grid/models/event_subscription.rb, line 57
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'EventSubscription',
    type: {
      name: 'Composite',
      class_name: 'EventSubscription',
      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'
          }
        },
        topic: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.topic',
          type: {
            name: 'String'
          }
        },
        provisioning_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.provisioningState',
          type: {
            name: 'String'
          }
        },
        destination: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.destination',
          type: {
            name: 'Composite',
            polymorphic_discriminator: 'endpointType',
            uber_parent: 'EventSubscriptionDestination',
            class_name: 'EventSubscriptionDestination'
          }
        },
        filter: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.filter',
          type: {
            name: 'Composite',
            class_name: 'EventSubscriptionFilter'
          }
        },
        labels: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.labels',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        expiration_time_utc: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.expirationTimeUtc',
          type: {
            name: 'DateTime'
          }
        },
        event_delivery_schema: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.eventDeliverySchema',
          type: {
            name: 'String'
          }
        },
        retry_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.retryPolicy',
          type: {
            name: 'Composite',
            class_name: 'RetryPolicy'
          }
        },
        dead_letter_destination: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.deadLetterDestination',
          type: {
            name: 'Composite',
            polymorphic_discriminator: 'endpointType',
            uber_parent: 'DeadLetterDestination',
            class_name: 'DeadLetterDestination'
          }
        }
      }
    }
  }
end