Sha256: 55c7d76f4136e26b85342ec80802e7f73b191aac4b7d0ef821e73eb788bb6e78
Contents?: true
Size: 1.02 KB
Versions: 65
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
65 entries across 65 versions & 6 rubygems