Sha256: 5ffe88338ebbe2fa04b5abaf7fe63703370f03add1cfc0819f0d49caa9e29f3c

Contents?: true

Size: 467 Bytes

Versions: 19

Compression:

Stored size: 467 Bytes

Contents

require 'net/http'

module Prawn::SVG::Loaders
  class Web
    def from_url(url)
      uri = build_uri(url)

      if uri && %w(http https).include?(uri.scheme)
        perform_request(uri)
      end
    end

    private

    def build_uri(url)
      begin
        URI(url)
      rescue URI::InvalidURIError
      end
    end

    def perform_request(uri)
      Net::HTTP.get(uri)
    rescue => e
      raise Prawn::SVG::UrlLoader::Error, e.message
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
prawn-svg-0.34.2 lib/prawn/svg/loaders/web.rb
prawn-svg-0.34.1 lib/prawn/svg/loaders/web.rb
prawn-svg-0.34.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.33.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.32.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.31.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.30.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.29.1 lib/prawn/svg/loaders/web.rb
prawn-svg-0.29.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.28.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.27.1 lib/prawn/svg/loaders/web.rb
prawn-svg-0.27.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.26.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.25.2 lib/prawn/svg/loaders/web.rb
prawn-svg-0.25.1 lib/prawn/svg/loaders/web.rb
prawn-svg-0.25.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.24.0 lib/prawn/svg/loaders/web.rb
prawn-svg-0.23.1 lib/prawn/svg/loaders/web.rb
prawn-svg-0.23.0 lib/prawn/svg/loaders/web.rb