Sha256: 69d2c8aacfd8b69f9a86dfd60193589de911e5868518c8104bc2c10bbffe337a
Contents?: true
Size: 1.68 KB
Versions: 61
Compression:
Stored size: 1.68 KB
Contents
module Fog module Parsers module Storage module InternetArchive class GetBucket < Fog::Parsers::Base def reset @object = { 'Owner' => {} } @response = { 'Contents' => [], 'CommonPrefixes' => [] } end def start_element(name, attrs = []) super case name when 'CommonPrefixes' @in_common_prefixes = true end end def end_element(name) case name when 'CommonPrefixes' @in_common_prefixes = false when 'Contents' @response['Contents'] << @object @object = { 'Owner' => {} } when 'DisplayName', 'ID' @object['Owner'][name] = value when 'ETag' @object[name] = value.gsub('"', '') when 'IsTruncated' if value == 'true' @response['IsTruncated'] = true else @response['IsTruncated'] = false end when 'LastModified' @object['LastModified'] = Time.parse(value) when 'Marker', 'Name' @response[name] = value when 'MaxKeys' @response['MaxKeys'] = value.to_i when 'Prefix' if @in_common_prefixes @response['CommonPrefixes'] << value else @response[name] = value end when 'Size' @object['Size'] = value.to_i when 'Delimiter', 'Key', 'StorageClass' @object[name] = value end end end end end end end
Version data entries
61 entries across 61 versions & 6 rubygems