1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/rackspace/requests/files/get_container.rb

63 lines
1.8 KiB
Ruby
Raw Normal View History

2009-10-26 20:56:08 -04:00
unless Fog.mocking?
module Fog
module Rackspace
class Files
# List number of containers and total bytes stored
#
# ==== Parameters
# * container<~String> - Name of container to retrieve info for
# * options<~String>:
# * 'limit'<~String> - Maximum number of objects to return
# * 'marker'<~String> - Only return objects whose name is greater than marker
# * 'prefix'<~String> - Limits results to those starting with prefix
# * 'path'<~String> - Return objects nested in the pseudo path
#
# ==== Returns
# * response<~Excon::Response>:
2009-10-26 20:56:08 -04:00
# * headers<~Hash>:
# * 'X-Account-Container-Count'<~String> - Count of containers
# * 'X-Account-Bytes-Used'<~String> - Bytes used
# * body<~Array>:
# * item<~Hash>:
# * 'bytes'<~String> - Size of object
# * 'content_type'<~String> Content-Type of object
# * 'hash'<~String> - Hash of object (etag?)
# * 'last_modified'<~String> - Last modified timestamp
# * 'name'<~String> - Name of object
2009-10-26 20:56:08 -04:00
def get_container(container, options = {})
query = ''
for key, value in options.merge!({ 'format' => 'json' })
query << "#{key}=#{value}&"
end
query.chop!
response = storage_request(
:expects => 200,
:method => 'GET',
:path => container,
:query => query
)
response
end
end
end
end
else
module Fog
module Rackspace
class Servers
def get_container(container, options = {})
raise MockNotImplemented.new("Contributions welcome!")
2009-10-26 20:56:08 -04:00
end
end
end
end
end