Sha256: 2b17565193656faff5a88f5440a4ffdae3daa1698d2b2a923119194815ff7b46
Contents?: true
Size: 1.02 KB
Versions: 61
Compression:
Stored size: 1.02 KB
Contents
module Fog module Storage class AWS require 'fog/aws/parsers/storage/cors_configuration' private def self.hash_to_cors(cors) data = "<CORSConfiguration>\n" [cors['CORSConfiguration']].flatten.compact.each do |rule| data << " <CORSRule>\n" ['ID', 'MaxAgeSeconds'].each do |key| data << " <#{key}>#{rule[key]}</#{key}>\n" if rule[key] end ['AllowedOrigin', 'AllowedMethod', 'AllowedHeader', 'ExposeHeader'].each do |key| [rule[key]].flatten.compact.each do |value| data << " <#{key}>#{value}</#{key}>\n" end end data << " </CORSRule>\n" end data << "</CORSConfiguration>" data end def self.cors_to_hash(cors_xml) parser = Fog::Parsers::Storage::AWS::CorsConfiguration.new Nokogiri::XML::SAX::Parser.new(parser).parse(cors_xml) parser.response end end end end
Version data entries
61 entries across 59 versions & 6 rubygems