Sha256: bb907040328b31ba992fefdcd1aeeb22febb0b99267bbd782216bbe3733bdb72
Contents?: true
Size: 856 Bytes
Versions: 4
Compression:
Stored size: 856 Bytes
Contents
require "httpi" module Wasabi # = Wasabi::Resolver # # Resolves local and remote WSDL documents. class Resolver class HTTPError < StandardError; end def initialize(document, request = nil) @document = document @request = request end def xml raise ArgumentError, "Wasabi is missing a document to resolve" unless @document case @document when /^http[s]?:/ then from_remote when /^</ then @document else from_fs end end private def from_remote response = HTTPI.get(request) raise HTTPError.new(response) if response.error? response.body end def request @request ||= HTTPI::Request.new @request.url = @document @request end def from_fs File.read(@document) end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
wasabi-2.5.1 | lib/wasabi/resolver.rb |
wasabi-2.5.0 | lib/wasabi/resolver.rb |
wasabi-2.4.1 | lib/wasabi/resolver.rb |
wasabi-2.4.0 | lib/wasabi/resolver.rb |