Sha256: 2ad11289fe74e011ec450d9516f84d8721eefa3b3c637d7d4ee7db7d5608b60c

Contents?: true

Size: 1.12 KB

Versions: 16

Compression:

Stored size: 1.12 KB

Contents

require 'rack'
begin
  require 'linkeddata'
rescue LoadError => e
  require 'rdf/ntriples'
end
require 'sparql'

module Rack
  module SPARQL
    autoload :ContentNegotiation, 'rack/sparql/conneg'

    ##
    # Registers all known RDF formats with Rack's MIME types registry.
    #
    # Registers both known file extensions and format symbols.
    #
    # @param  [Hash{Symbol => Object}] options
    # @option options [Boolean]        :overwrite (false)
    # @return [void]
    def self.register_mime_types!(**options)
      if defined?(Rack::Mime::MIME_TYPES)
        RDF::Format.each do |format|
          if !Rack::Mime::MIME_TYPES.has_key?(file_ext = ".#{format.to_sym}") || options[:overwrite]
            Rack::Mime::MIME_TYPES.merge!(file_ext => format.content_type.first)
          end
        end
        RDF::Format.file_extensions.each do |file_ext, formats|
          if !Rack::Mime::MIME_TYPES.has_key?(file_ext = ".#{file_ext}") || options[:overwrite]
            Rack::Mime::MIME_TYPES.merge!(file_ext => formats.first.content_type.first)
          end
        end
      end
    end
  end
end

Rack::SPARQL.register_mime_types!

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
sparql-3.3.1 lib/rack/sparql.rb
sparql-3.3.0 lib/rack/sparql.rb
sparql-3.2.6 lib/rack/sparql.rb
sparql-3.2.5 lib/rack/sparql.rb
sparql-3.2.4 lib/rack/sparql.rb
sparql-3.2.3 lib/rack/sparql.rb
sparql-3.2.1 lib/rack/sparql.rb
sparql-3.2.0 lib/rack/sparql.rb
sparql-3.1.8 lib/rack/sparql.rb
sparql-3.1.7 lib/rack/sparql.rb
sparql-3.1.6 lib/rack/sparql.rb
sparql-3.1.5 lib/rack/sparql.rb
sparql-3.1.4 lib/rack/sparql.rb
sparql-3.1.3 lib/rack/sparql.rb
sparql-3.1.2 lib/rack/sparql.rb
sparql-3.1.0 lib/rack/sparql.rb