Sha256: 2a85c38164d22f89b1040180f19e971c2304234644a17908ddb2a3db132b628a

Contents?: true

Size: 494 Bytes

Versions: 5

Compression:

Stored size: 494 Bytes

Contents

module Microformats2
  class AbsoluteUri
    attr_accessor :base, :relative

    def initialize(base, relative)
      @base = base
      @relative = relative
    end

    def absolutize
      return nil if relative.nil? or relative == ""

      uri = URI.parse(relative)

      if base && !uri.absolute?
        uri = URI.join(base.to_s, relative.to_s)
      end

      uri.normalize!
      uri.to_s

    rescue URI::BadURIError, URI::InvalidURIError => e
      relative.to_s
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
microformats2-2.9.0 lib/microformats2/absolute_uri.rb
microformats2-2.1.0 lib/microformats2/absolute_uri.rb
microformats2-2.0.3 lib/microformats2/absolute_uri.rb
microformats2-2.0.2 lib/microformats2/absolute_uri.rb
microformats2-2.0.1 lib/microformats2/absolute_uri.rb