class Fog::AWS::CDN::Distribution
Constants
- CONFIG
items part of DistributionConfig
Public Class Methods
new(new_attributes = {})
click to toggle source
Calls superclass method
# File lib/fog/aws/models/cdn/distribution.rb, line 30 def initialize(new_attributes = {}) super(distribution_config_to_attributes(new_attributes)) end
Public Instance Methods
invalidations()
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 34 def invalidations @invalidations ||= begin Fog::AWS::CDN::Invalidations.new( :distribution => self, :service => service ) end end
save()
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 43 def save requires_one :s3_origin, :custom_origin options = attributes_to_options response = identity ? put_distribution_config(identity, etag, options) : post_distribution(options) etag = response.headers['ETag'] merge_attributes(response.body) true end
Private Instance Methods
attributes_to_options()
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 66 def attributes_to_options options = { 'CallerReference' => caller_reference, 'S3Origin' => s3_origin, 'CustomOrigin' => custom_origin, 'CNAME' => cname, 'Comment' => comment, 'Enabled' => enabled, 'Logging' => logging, 'TrustedSigners' => trusted_signers, 'DefaultRootObject' => default_root_object } options.reject! { |k,v| v.nil? } options.reject! { |k,v| v.respond_to?(:empty?) && v.empty? } options end
delete_distribution(identity, etag)
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 54 def delete_distribution(identity, etag) service.delete_distribution(identity, etag) end
distribution_config_to_attributes(new_attributes = {})
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 83 def distribution_config_to_attributes(new_attributes = {}) new_attributes.merge(new_attributes.delete('DistributionConfig') || {}) end
post_distribution(options = {})
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 62 def post_distribution(options = {}) service.post_distribution(options) end
put_distribution_config(identity, etag, options)
click to toggle source
# File lib/fog/aws/models/cdn/distribution.rb, line 58 def put_distribution_config(identity, etag, options) service.put_distribution_config(identity, etag, options) end