diff options
author | nahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-24 08:14:57 +0000 |
---|---|---|
committer | nahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-12-24 08:14:57 +0000 |
commit | 889c7de09d40ebdd3620cf9c0ad74d750b512221 (patch) | |
tree | 6c16302232c2b655cfd5ea406a9ac202814a8b35 /lib/wsdl/xmlSchema/importer.rb | |
parent | efed292c4311c8c182a32ac2afe70c6969815b2d (diff) |
Mon Dec 24 17:06:37 2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
at ruby-core and ruby-dev. see [ruby-core:12535], [ruby-dev:31969].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/wsdl/xmlSchema/importer.rb')
-rw-r--r-- | lib/wsdl/xmlSchema/importer.rb | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/lib/wsdl/xmlSchema/importer.rb b/lib/wsdl/xmlSchema/importer.rb deleted file mode 100644 index f57bfd972a..0000000000 --- a/lib/wsdl/xmlSchema/importer.rb +++ /dev/null @@ -1,87 +0,0 @@ -# WSDL4R - XSD importer library. -# Copyright (C) 2003, 2005 NAKAMURA, Hiroshi <nahi@ruby-lang.org>. - -# This program is copyrighted free software by NAKAMURA, Hiroshi. You can -# redistribute it and/or modify it under the same terms of Ruby's license; -# either the dual license version in 2003, or any later version. - - -require 'soap/httpconfigloader' -require 'wsdl/xmlSchema/parser' - - -module WSDL -module XMLSchema - - -class Importer - def self.import(location, originalroot = nil) - new.import(location, originalroot) - end - - def initialize - @web_client = nil - end - - def import(location, originalroot = nil) - unless location.is_a?(URI) - location = URI.parse(location) - end - content = parse(fetch(location), location, originalroot) - content.location = location - content - end - -private - - def parse(content, location, originalroot) - opt = { - :location => location, - :originalroot => originalroot - } - WSDL::XMLSchema::Parser.new(opt).parse(content) - end - - def fetch(location) - warn("importing: #{location}") if $DEBUG - content = nil - if location.scheme == 'file' or - (location.relative? and FileTest.exist?(location.path)) - content = File.open(location.path).read - elsif location.scheme and location.scheme.size == 1 and - FileTest.exist?(location.to_s) - # ToDo: remove this ugly workaround for a path with drive letter - # (D://foo/bar) - content = File.open(location.to_s).read - else - client = web_client.new(nil, "WSDL4R") - client.proxy = ::SOAP::Env::HTTP_PROXY - client.no_proxy = ::SOAP::Env::NO_PROXY - if opt = ::SOAP::Property.loadproperty(::SOAP::PropertyName) - ::SOAP::HTTPConfigLoader.set_options(client, - opt["client.protocol.http"]) - end - content = client.get_content(location) - end - content - end - - def web_client - @web_client ||= begin - require 'http-access2' - if HTTPAccess2::VERSION < "2.0" - raise LoadError.new("http-access/2.0 or later is required.") - end - HTTPAccess2::Client - rescue LoadError - warn("Loading http-access2 failed. Net/http is used.") if $DEBUG - require 'soap/netHttpClient' - ::SOAP::NetHttpClient - end - @web_client - end -end - - -end -end |