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

Version Path
fog-1.22.0 lib/fog/aws/requests/storage/cors_utils.rb
fog-1.21.0 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.20.0.20140305101839 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.20.0.20140305101305 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140212012611 lib/fog/aws/requests/storage/cors_utils.rb
fog-1.20.0 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140110004459 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140110003812 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140109202555 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140107192102 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20140107142106 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.19.0.20131219203941 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131219193542 lib/fog/aws/requests/storage/cors_utils.rb
fog-1.19.0 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131219033443 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131219032002 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131219030716 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131219022322 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131218202447 lib/fog/aws/requests/storage/cors_utils.rb
fog-maestrodev-1.18.0.20131209091424 lib/fog/aws/requests/storage/cors_utils.rb