class Azure::CDN::Mgmt::V2017_04_02::Models::Endpoint

CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The CDN endpoint uses the URL format <endpointname>.azureedge.net.

Attributes

content_types_to_compress[RW]

@return [Array<String>] List of content types on which compression applies. The value should be a valid MIME type.

geo_filters[RW]

@return [Array<GeoFilter>] List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/

host_name[RW]

@return [String] The host name of the endpoint structured as {endpointName}.{DNSZone}, e.g. contoso.azureedge.net

is_compression_enabled[RW]

@return [Boolean] Indicates whether content compression is enabled on CDN. Default value is false. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on CDN when requested content is smaller than 1 byte or larger than 1 MB.

is_http_allowed[RW]

@return [Boolean] Indicates whether HTTP traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.

is_https_allowed[RW]

@return [Boolean] Indicates whether HTTPS traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.

optimization_type[RW]

@return [OptimizationType] Specifies what scenario the customer wants this CDN endpoint to optimize for, e.g. Download, Media services. With this information, CDN can apply scenario driven optimization. Possible values include: 'GeneralWebDelivery', 'GeneralMediaStreaming', 'VideoOnDemandMediaStreaming', 'LargeFileDownload', 'DynamicSiteAcceleration'

origin_host_header[RW]

@return [String] The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.

origin_path[RW]

@return [String] A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.

origins[RW]

@return [Array<DeepCreatedOrigin>] The source of the content being delivered via CDN.

probe_path[RW]

@return [String] Path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin path.

provisioning_state[RW]

@return [String] Provisioning status of the endpoint.

query_string_caching_behavior[RW]

@return [QueryStringCachingBehavior] Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL. Possible values include: 'IgnoreQueryString', 'BypassCaching', 'UseQueryString', 'NotSet'

resource_state[RW]

@return [EndpointResourceState] Resource status of the endpoint. Possible values include: 'Creating', 'Deleting', 'Running', 'Starting', 'Stopped', 'Stopping'

Public Class Methods

mapper() click to toggle source

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

# File lib/2017-04-02/generated/azure_mgmt_cdn/models/endpoint.rb, line 97
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'Endpoint',
    type: {
      name: 'Composite',
      class_name: 'Endpoint',
      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'
          }
        },
        location: {
          client_side_validation: true,
          required: true,
          serialized_name: 'location',
          type: {
            name: 'String'
          }
        },
        tags: {
          client_side_validation: true,
          required: false,
          serialized_name: 'tags',
          type: {
            name: 'Dictionary',
            value: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        origin_host_header: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.originHostHeader',
          type: {
            name: 'String'
          }
        },
        origin_path: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.originPath',
          type: {
            name: 'String'
          }
        },
        content_types_to_compress: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.contentTypesToCompress',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        is_compression_enabled: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.isCompressionEnabled',
          type: {
            name: 'Boolean'
          }
        },
        is_http_allowed: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.isHttpAllowed',
          type: {
            name: 'Boolean'
          }
        },
        is_https_allowed: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.isHttpsAllowed',
          type: {
            name: 'Boolean'
          }
        },
        query_string_caching_behavior: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.queryStringCachingBehavior',
          type: {
            name: 'Enum',
            module: 'QueryStringCachingBehavior'
          }
        },
        optimization_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.optimizationType',
          type: {
            name: 'String'
          }
        },
        probe_path: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.probePath',
          type: {
            name: 'String'
          }
        },
        geo_filters: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.geoFilters',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'GeoFilterElementType',
                type: {
                  name: 'Composite',
                  class_name: 'GeoFilter'
                }
            }
          }
        },
        host_name: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.hostName',
          type: {
            name: 'String'
          }
        },
        origins: {
          client_side_validation: true,
          required: true,
          serialized_name: 'properties.origins',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'DeepCreatedOriginElementType',
                type: {
                  name: 'Composite',
                  class_name: 'DeepCreatedOrigin'
                }
            }
          }
        },
        resource_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.resourceState',
          type: {
            name: 'String'
          }
        },
        provisioning_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.provisioningState',
          type: {
            name: 'String'
          }
        }
      }
    }
  }
end