diff --git a/lib/fog/rackspace/models/storage/directory.rb b/lib/fog/rackspace/models/storage/directory.rb index c1dd84e80..5fb239c82 100644 --- a/lib/fog/rackspace/models/storage/directory.rb +++ b/lib/fog/rackspace/models/storage/directory.rb @@ -40,7 +40,7 @@ module Fog requires :key @public_url ||= begin begin response = connection.cdn.head_container(key) - response.headers['X-CDN-URI'] + response.headers['X-CDN-Enabled'] == 'True' && response.headers['X-CDN-URI'] rescue Fog::Service::NotFound nil end @@ -51,7 +51,10 @@ module Fog requires :key connection.put_container(key) if @public - @public_url = connection.cdn.put_container(key).headers['X-CDN-URI'] + @public_url = connection.cdn.put_container(key, 'X-CDN-Enabled' => 'True').headers['X-CDN-URI'] + else + connection.cdn.put_container(key, 'X-CDN-Enabled' => 'False') + @public_url = nil end true end diff --git a/lib/fog/rackspace/models/storage/files.rb b/lib/fog/rackspace/models/storage/files.rb index 0845f4f72..5ea76fc50 100644 --- a/lib/fog/rackspace/models/storage/files.rb +++ b/lib/fog/rackspace/models/storage/files.rb @@ -49,12 +49,12 @@ module Fog def get_url(key, expires) requires :directory - connection.get_object_url(directory.name, key, expires) + connection.get_object_url(directory.key, key, expires) end def head(key, options = {}) requires :directory - data = connection.head_object(directory.name, key, options) + data = connection.head_object(directory.key, key) file_data = data.headers.merge({ :key => key })