mirror of
https://github.com/fog/fog.git
synced 2022-11-09 13:51:43 -05:00
more rackspace files implementation
This commit is contained in:
parent
8ef154b1ab
commit
52add3ee4f
3 changed files with 101 additions and 2 deletions
54
lib/fog/rackspace/requests/files/get_container.rb
Normal file
54
lib/fog/rackspace/requests/files/get_container.rb
Normal file
|
@ -0,0 +1,54 @@
|
|||
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<~Fog::AWS::Response>:
|
||||
# * headers<~Hash>:
|
||||
# * 'X-Account-Container-Count'<~String> - Count of containers
|
||||
# * 'X-Account-Bytes-Used'<~String> - Bytes used
|
||||
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_flavors
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
|
@ -22,13 +22,14 @@ unless Fog.mocking?
|
|||
options = { 'format' => 'json' }.merge!(options)
|
||||
query = []
|
||||
for key, value in options
|
||||
query << "#{key}=#{CGI.escape(value)}"
|
||||
query << "#{key}=#{CGI.escape(value)}&"
|
||||
end
|
||||
query.chop!
|
||||
response = storage_request(
|
||||
:expects => [200, 204],
|
||||
:method => 'GET',
|
||||
:path => '',
|
||||
:query => query.join('&')
|
||||
:query => query
|
||||
)
|
||||
if response.status == 204
|
||||
response.body = []
|
||||
|
|
44
lib/fog/rackspace/requests/files/head_container.rb
Normal file
44
lib/fog/rackspace/requests/files/head_container.rb
Normal file
|
@ -0,0 +1,44 @@
|
|||
unless Fog.mocking?
|
||||
|
||||
module Fog
|
||||
module Rackspace
|
||||
class Files
|
||||
|
||||
# List number of objects and total bytes stored
|
||||
#
|
||||
# ==== Parameters
|
||||
# * container<~String> - Name of container to retrieve info for
|
||||
#
|
||||
# ==== Returns
|
||||
# * response<~Fog::AWS::Response>:
|
||||
# * headers<~Hash>:
|
||||
# * 'X-Container-Object-Count'<~String> - Count of containers
|
||||
# * 'X-Container-Bytes-Used'<~String> - Bytes used
|
||||
def head_container(container)
|
||||
response = storage_request(
|
||||
:expects => 204,
|
||||
:method => 'HEAD',
|
||||
:path => container,
|
||||
:query => 'format=json'
|
||||
)
|
||||
response
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
else
|
||||
|
||||
module Fog
|
||||
module Rackspace
|
||||
class Servers
|
||||
|
||||
def get_flavors
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
Loading…
Reference in a new issue