def get_acl_parse(bucket, key='', headers={})
key = Aws::Utils.blank?(key) ? '' : "/#{CGI::escape key}"
req_hash = generate_rest_request('GET', headers.merge(:url=>"#{bucket}#{key}?acl"))
acl = request_info(req_hash, S3AclParser.new(:logger => @logger))
result = {}
result[:owner] = acl[:owner]
result[:grantees] = {}
acl[:grantees].each do |grantee|
key = grantee[:id] || grantee[:uri]
if result[:grantees].key?(key)
result[:grantees][key][:permissions] << grantee[:permissions]
else
result[:grantees][key] =
{:display_name => grantee[:display_name] || grantee[:uri].to_s[/[^\/]*$/],
:permissions => grantee[:permissions].lines.to_a,
:attributes => grantee[:attributes]}
end
end
result
rescue
on_exception
end