Class: Google::Apis::ComputeV1::BackendServiceCdnPolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/representations.rb

Overview

Message containing Cloud CDN configuration for a backend service.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackendServiceCdnPolicy

Returns a new instance of BackendServiceCdnPolicy.



3295
3296
3297
# File 'generated/google/apis/compute_v1/classes.rb', line 3295

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cache_key_policyGoogle::Apis::ComputeV1::CacheKeyPolicy

Message containing what to include in the cache key for a request for Cloud CDN. Corresponds to the JSON property cacheKeyPolicy



3228
3229
3230
# File 'generated/google/apis/compute_v1/classes.rb', line 3228

def cache_key_policy
  @cache_key_policy
end

#cache_modeString

Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no- cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. Corresponds to the JSON property cacheMode

Returns:

  • (String)


3245
3246
3247
# File 'generated/google/apis/compute_v1/classes.rb', line 3245

def cache_mode
  @cache_mode
end

#client_ttlFixnum

Specifies a separate client (e.g. browser client) TTL, separate from the TTL for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL for both Cloud CDN and the client-facing response. The maximum allowed value is 86400s (1 day). Corresponds to the JSON property clientTtl

Returns:

  • (Fixnum)


3253
3254
3255
# File 'generated/google/apis/compute_v1/classes.rb', line 3253

def client_ttl
  @client_ttl
end

#default_ttlFixnum

Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age). Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot be set to a value greater than that of maxTTL, but can be equal. When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses. The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. Corresponds to the JSON property defaultTtl

Returns:

  • (Fixnum)


3265
3266
3267
# File 'generated/google/apis/compute_v1/classes.rb', line 3265

def default_ttl
  @default_ttl
end

#max_ttlFixnum

Specifies the maximum allowed TTL for cached content served by this origin. Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTTL seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive. Headers sent to the client will not be modified. Setting a TTL of " 0" means "always revalidate". The maximum allowed value is 31,622,400s (1 year) , noting that infrequently accessed objects may be evicted from the cache before the defined TTL. Corresponds to the JSON property maxTtl

Returns:

  • (Fixnum)


3277
3278
3279
# File 'generated/google/apis/compute_v1/classes.rb', line 3277

def max_ttl
  @max_ttl
end

#signed_url_cache_max_age_secFixnum

Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. Defaults to 1hr (3600s). When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a "Cache-Control: public, max-age=[TTL]" header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered. Corresponds to the JSON property signedUrlCacheMaxAgeSec

Returns:

  • (Fixnum)


3288
3289
3290
# File 'generated/google/apis/compute_v1/classes.rb', line 3288

def signed_url_cache_max_age_sec
  @signed_url_cache_max_age_sec
end

#signed_url_key_namesArray<String>

[Output Only] Names of the keys for signing request URLs. Corresponds to the JSON property signedUrlKeyNames

Returns:

  • (Array<String>)


3293
3294
3295
# File 'generated/google/apis/compute_v1/classes.rb', line 3293

def signed_url_key_names
  @signed_url_key_names
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3300
3301
3302
3303
3304
3305
3306
3307
3308
# File 'generated/google/apis/compute_v1/classes.rb', line 3300

def update!(**args)
  @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
  @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
  @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
  @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
  @max_ttl = args[:max_ttl] if args.key?(:max_ttl)
  @signed_url_cache_max_age_sec = args[:signed_url_cache_max_age_sec] if args.key?(:signed_url_cache_max_age_sec)
  @signed_url_key_names = args[:signed_url_key_names] if args.key?(:signed_url_key_names)
end