mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license; GPL2 -> Ruby's.
* lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb, lib/soap/streamHandler.rb: add interface to streamhandler.
* lib/soap/marshal.rb: raise error if parse fails.
* lib/soap/netHttpClient.rb: add https support.  Patched by Oliver M. Bolzer.
* lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
* lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb, lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce using charset for parsing response from buggy server.
* lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half typed multi-ref array.
* lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map SOAPStruct which has multi-accessors which name are the same, to an array.
* lib/soap/rpc/element.rb: fixed illegal parameter order.
* lib/soap/rpc/element.rb: element name of response message could have the name other than 'return'.
* lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb, lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb, lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural fault definition in a operation. [ruby-talk:84948]
* test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add test for above fix.
* lib/wsdl/soap/complexType.rb: support WSDL array definition with maxOccures="unbound".
* lib/xsd/charset.rb: use cp932 under emx.  Patched by Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
* lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means 'follow encoding declaration in XML'.
* sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb, sample/wsdl/googleSearch/sampleClient.rb, sample/wsdl/googleSearch/wsdlDriver.rb, test/wsdl/test_emptycomplextype.rb, test/wsdl/marshal/test_wsdlmarshal.rb, test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read } instead of File.open(...).read. [ruby-dev:21964]
* test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb: simplify the test case.
* test/wsdl/axisArray/*: add tests for axis's array encoding.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
			
			
This commit is contained in:
		
							parent
							
								
									ec373c3e1c
								
							
						
					
					
						commit
						6a09e1d966
					
				
					 98 changed files with 1020 additions and 1558 deletions
				
			
		
							
								
								
									
										61
									
								
								ChangeLog
									
										
									
									
									
								
							
							
						
						
									
										61
									
								
								ChangeLog
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,3 +1,64 @@
 | 
			
		|||
Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
 | 
			
		||||
 | 
			
		||||
	* lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
 | 
			
		||||
	  GPL2 -> Ruby's.  
 | 
			
		||||
 | 
			
		||||
	* lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
 | 
			
		||||
	  lib/soap/streamHandler.rb: add interface to streamhandler.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/marshal.rb: raise error if parse fails.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/netHttpClient.rb: add https support.  Patched by
 | 
			
		||||
	  Oliver M. Bolzer.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
 | 
			
		||||
	  lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
 | 
			
		||||
	  using charset for parsing response from buggy server.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
 | 
			
		||||
	  typed multi-ref array.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
 | 
			
		||||
	  SOAPStruct which has multi-accessors which name are the same, to an
 | 
			
		||||
	  array.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/rpc/element.rb: fixed illegal parameter order.
 | 
			
		||||
 | 
			
		||||
	* lib/soap/rpc/element.rb: element name of response message could have
 | 
			
		||||
	  the name other than 'return'.
 | 
			
		||||
 | 
			
		||||
	* lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
 | 
			
		||||
	  lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
 | 
			
		||||
	  lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
 | 
			
		||||
	  fault definition in a operation. [ruby-talk:84948]
 | 
			
		||||
 | 
			
		||||
	* test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
 | 
			
		||||
	  test for above fix.
 | 
			
		||||
 | 
			
		||||
	* lib/wsdl/soap/complexType.rb: support WSDL array definition with
 | 
			
		||||
	  maxOccures="unbound".
 | 
			
		||||
 | 
			
		||||
	* lib/xsd/charset.rb: use cp932 under emx.  Patched by
 | 
			
		||||
	  Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
 | 
			
		||||
 | 
			
		||||
	* lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
 | 
			
		||||
	  'follow encoding declaration in XML'.
 | 
			
		||||
 | 
			
		||||
	* sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
 | 
			
		||||
	  sample/wsdl/googleSearch/sampleClient.rb,
 | 
			
		||||
	  sample/wsdl/googleSearch/wsdlDriver.rb,
 | 
			
		||||
	  test/wsdl/test_emptycomplextype.rb,
 | 
			
		||||
	  test/wsdl/marshal/test_wsdlmarshal.rb,
 | 
			
		||||
	  test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
 | 
			
		||||
	  instead of File.open(...).read. [ruby-dev:21964]
 | 
			
		||||
 | 
			
		||||
	* test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
 | 
			
		||||
	  simplify the test case.
 | 
			
		||||
 | 
			
		||||
	* test/wsdl/axisArray/*: add tests for axis's array encoding.
 | 
			
		||||
 | 
			
		||||
Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
 | 
			
		||||
 | 
			
		||||
	* ruby.h: don't treat Cygwin as Windows.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										5
									
								
								MANIFEST
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								MANIFEST
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -725,13 +725,18 @@ test/uri/test_generic.rb
 | 
			
		|||
test/uri/test_http.rb
 | 
			
		||||
test/uri/test_ldap.rb
 | 
			
		||||
test/uri/test_mailto.rb
 | 
			
		||||
test/wsdl/axisArray/axisArray.wsdl
 | 
			
		||||
test/wsdl/axisArray/itemList.rb
 | 
			
		||||
test/wsdl/axisArray/test_axisarray.rb
 | 
			
		||||
test/wsdl/emptycomplextype.wsdl
 | 
			
		||||
test/wsdl/multiplefault.wsdl
 | 
			
		||||
test/wsdl/raa/RAA.rb
 | 
			
		||||
test/wsdl/raa/README.txt
 | 
			
		||||
test/wsdl/raa/raa.wsdl
 | 
			
		||||
test/wsdl/raa/server.rb
 | 
			
		||||
test/wsdl/raa/test_raa.rb
 | 
			
		||||
test/wsdl/test_emptycomplextype.rb
 | 
			
		||||
test/wsdl/test_multiplefault.rb
 | 
			
		||||
test/xsd/test_xmlschemaparser.rb
 | 
			
		||||
test/xsd/test_xsd.rb
 | 
			
		||||
test/xsd/xmlschema.xml
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Base type library
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# soap/baseData.rb: SOAP4R - Base type library
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/datatypes'
 | 
			
		||||
| 
						 | 
				
			
			@ -408,7 +397,7 @@ public
 | 
			
		|||
private
 | 
			
		||||
 | 
			
		||||
  def add_member(name, value = nil)
 | 
			
		||||
    value = SOAPNil.new() unless value
 | 
			
		||||
    value = SOAPNil.new() if value.nil?
 | 
			
		||||
    @array.push(name)
 | 
			
		||||
    value.elename = value.elename.dup_name(name)
 | 
			
		||||
    @data.push(value)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP elements library
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP elements library
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - ASP.NET EncodingStyle handler library
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - ASP.NET EncodingStyle handler library
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/encodingstyle/handler'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - EncodingStyle handler library
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - EncodingStyle handler library
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/soap'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - XML Literal EncodingStyle handler library
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - XML Literal EncodingStyle handler library
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/encodingstyle/handler'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP EncodingStyle handler library
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP EncodingStyle handler library
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/encodingstyle/handler'
 | 
			
		||||
| 
						 | 
				
			
			@ -172,10 +161,9 @@ class SOAPHandler < Handler
 | 
			
		|||
    elsif href
 | 
			
		||||
      o = SOAPReference.decode(elename, href)
 | 
			
		||||
      @refpool << o
 | 
			
		||||
    elsif @decode_typemap &&
 | 
			
		||||
	(parent.node.class != SOAPBody || @is_first_top_ele)
 | 
			
		||||
      # multi-ref element should be parsed by decode_tag_by_type.
 | 
			
		||||
      @is_first_top_ele = false
 | 
			
		||||
    elsif @decode_typemap
 | 
			
		||||
	# to parse multi-ref element with decode_tag_by_type.
 | 
			
		||||
	# && (parent.node.class != SOAPBody || @is_first_top_ele)
 | 
			
		||||
      o = decode_tag_by_wsdl(ns, elename, type, parent.node, arytype, extraattr)
 | 
			
		||||
    else
 | 
			
		||||
      o = decode_tag_by_type(ns, elename, type, parent.node, arytype, extraattr)
 | 
			
		||||
| 
						 | 
				
			
			@ -344,15 +332,30 @@ private
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  def decode_tag_by_wsdl(ns, elename, typestr, parent, arytypestr, extraattr)
 | 
			
		||||
    o = nil
 | 
			
		||||
    if parent.class == SOAPBody
 | 
			
		||||
      # Unqualified name is allowed here.
 | 
			
		||||
      type = @decode_typemap[elename] || @decode_typemap.find_name(elename.name)
 | 
			
		||||
      unless type
 | 
			
		||||
	raise EncodingStyleError.new("Unknown operation '#{ elename }'.")
 | 
			
		||||
      if @is_first_top_ele
 | 
			
		||||
	# Unqualified name is allowed here.
 | 
			
		||||
	@is_first_top_ele = false
 | 
			
		||||
	type = @decode_typemap[elename] ||
 | 
			
		||||
	  @decode_typemap.find_name(elename.name)
 | 
			
		||||
	unless type
 | 
			
		||||
	  raise EncodingStyleError.new("Unknown operation '#{ elename }'.")
 | 
			
		||||
	end
 | 
			
		||||
	o = SOAPStruct.new(elename)
 | 
			
		||||
	o.definedtype = type
 | 
			
		||||
	return o
 | 
			
		||||
      elsif !typestr
 | 
			
		||||
	# typeless multi-ref element.
 | 
			
		||||
	return decode_tag_by_type(ns, elename, typestr, parent, arytypestr,
 | 
			
		||||
	  extraattr)
 | 
			
		||||
      else
 | 
			
		||||
	# typed multi-ref element.
 | 
			
		||||
	typename = ns.parse(typestr)
 | 
			
		||||
	typedef = @decode_typemap[typename]
 | 
			
		||||
	return decode_defined_compoundtype(elename, typename, typedef,
 | 
			
		||||
	  arytypestr)
 | 
			
		||||
      end
 | 
			
		||||
      o = SOAPStruct.new(elename)
 | 
			
		||||
      o.definedtype = type
 | 
			
		||||
      return o
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    if parent.type == XSD::AnyTypeName
 | 
			
		||||
| 
						 | 
				
			
			@ -366,41 +369,41 @@ private
 | 
			
		|||
    unless parenttype
 | 
			
		||||
      raise EncodingStyleError.new("Unknown type '#{ parent.type }'.")
 | 
			
		||||
    end
 | 
			
		||||
    typename = parenttype.child_type(elename)
 | 
			
		||||
    if typename
 | 
			
		||||
      if (klass = TypeMap[typename])
 | 
			
		||||
	return klass.decode(elename)
 | 
			
		||||
      elsif typename == XSD::AnyTypeName
 | 
			
		||||
	return decode_tag_by_type(ns, elename, typestr, parent, arytypestr,
 | 
			
		||||
	  extraattr)
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
    definedtype_name = parenttype.child_type(elename)
 | 
			
		||||
    if definedtype_name and (klass = TypeMap[definedtype_name])
 | 
			
		||||
      return klass.decode(elename)
 | 
			
		||||
    elsif definedtype_name == XSD::AnyTypeName
 | 
			
		||||
      return decode_tag_by_type(ns, elename, typestr, parent, arytypestr,
 | 
			
		||||
	extraattr)
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    type = if typename
 | 
			
		||||
	@decode_typemap[typename]
 | 
			
		||||
      else
 | 
			
		||||
	parenttype.child_defined_complextype(elename)
 | 
			
		||||
      end
 | 
			
		||||
    unless type
 | 
			
		||||
    typedef = definedtype_name ? @decode_typemap[definedtype_name] :
 | 
			
		||||
      parenttype.child_defined_complextype(elename)
 | 
			
		||||
    decode_defined_compoundtype(elename, definedtype_name, typedef, arytypestr)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def decode_defined_compoundtype(elename, typename, typedef, arytypestr)
 | 
			
		||||
    unless typedef
 | 
			
		||||
      raise EncodingStyleError.new("Unknown type '#{ typename }'.")
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    case type.compoundtype
 | 
			
		||||
    case typedef.compoundtype
 | 
			
		||||
    when :TYPE_STRUCT
 | 
			
		||||
      o = SOAPStruct.decode(elename, typename)
 | 
			
		||||
      o.definedtype = type
 | 
			
		||||
      o.definedtype = typedef
 | 
			
		||||
      return o
 | 
			
		||||
    when :TYPE_ARRAY
 | 
			
		||||
      expected_arytype = type.find_arytype
 | 
			
		||||
      actual_arytype = if arytypestr
 | 
			
		||||
	  XSD::QName.new(expected_arytype.namespace,
 | 
			
		||||
	    content_typename(expected_arytype.name) <<
 | 
			
		||||
	    content_ranksize(arytypestr))
 | 
			
		||||
	else
 | 
			
		||||
       	  expected_arytype
 | 
			
		||||
	end
 | 
			
		||||
      o = SOAPArray.decode(elename, typename, actual_arytype)
 | 
			
		||||
      o.definedtype = type
 | 
			
		||||
      expected_arytype = typedef.find_arytype
 | 
			
		||||
      if arytypestr
 | 
			
		||||
	actual_arytype = XSD::QName.new(expected_arytype.namespace,
 | 
			
		||||
	  content_typename(expected_arytype.name) <<
 | 
			
		||||
	  content_ranksize(arytypestr))
 | 
			
		||||
	o = SOAPArray.decode(elename, typename, actual_arytype)
 | 
			
		||||
      else
 | 
			
		||||
	o = SOAPArray.new(typename, 1, expected_arytype)
 | 
			
		||||
	o.elename = elename
 | 
			
		||||
      end
 | 
			
		||||
      o.definedtype = typedef
 | 
			
		||||
      return o
 | 
			
		||||
    end
 | 
			
		||||
    return nil
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP XML Instance Generator library.
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP XML Instance Generator library.
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/ns'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Ruby type mapping utility.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Ruby type mapping utility.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/mapping/mapping'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Mapping factory.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Mapping factory.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module SOAP
 | 
			
		||||
| 
						 | 
				
			
			@ -73,11 +62,11 @@ class Factory
 | 
			
		|||
 | 
			
		||||
  def setiv2obj(obj, node, map)
 | 
			
		||||
    return if node.nil?
 | 
			
		||||
    vars = {}
 | 
			
		||||
    node.each do |name, value|
 | 
			
		||||
      vars[Mapping.elename2name(name)] = Mapping._soap2obj(value, map)
 | 
			
		||||
    if obj.is_a?(Array)
 | 
			
		||||
      setiv2ary(obj, node, map)
 | 
			
		||||
    else
 | 
			
		||||
      setiv2struct(obj, node, map)
 | 
			
		||||
    end
 | 
			
		||||
    Mapping.set_instance_vars(obj, vars)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def setiv2soap(node, obj, map)
 | 
			
		||||
| 
						 | 
				
			
			@ -105,6 +94,22 @@ class Factory
 | 
			
		|||
  def capitalize(target)
 | 
			
		||||
    target.gsub(/^([a-z])/) { $1.tr!('[a-z]', '[A-Z]') }
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
private
 | 
			
		||||
 | 
			
		||||
  def setiv2ary(obj, node, map)
 | 
			
		||||
    node.each do |name, value|
 | 
			
		||||
      Array.instance_method(:<<).bind(obj).call(Mapping._soap2obj(value, map))
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def setiv2struct(obj, node, map)
 | 
			
		||||
    vars = {}
 | 
			
		||||
    node.each do |name, value|
 | 
			
		||||
      vars[Mapping.elename2name(name)] = Mapping._soap2obj(value, map)
 | 
			
		||||
    end
 | 
			
		||||
    Mapping.set_instance_vars(obj, vars)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
class StringFactory_ < Factory
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Ruby type mapping utility.
 | 
			
		||||
Copyright (C) 2000, 2001, 2003 NAKAMURA Hiroshi.
 | 
			
		||||
# SOAP4R - Ruby type mapping utility.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003 NAKAMURA Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module SOAP
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Mapping registry.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Mapping registry.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/baseData'
 | 
			
		||||
| 
						 | 
				
			
			@ -145,7 +134,7 @@ class Registry
 | 
			
		|||
      @registry = registry
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def obj2soap(klass, obj)
 | 
			
		||||
    def obj2soap(klass, obj, type_qname = nil)
 | 
			
		||||
      @map.each do |obj_class, soap_class, factory, info|
 | 
			
		||||
        if klass == obj_class or
 | 
			
		||||
            (info[:derived_class] and klass <= obj_class)
 | 
			
		||||
| 
						 | 
				
			
			@ -330,8 +319,8 @@ class Registry
 | 
			
		|||
  alias :set :add
 | 
			
		||||
 | 
			
		||||
  # This mapping registry ignores type hint.
 | 
			
		||||
  def obj2soap(klass, obj, type = nil)
 | 
			
		||||
    soap = _obj2soap(klass, obj, type)
 | 
			
		||||
  def obj2soap(klass, obj, type_qname = nil)
 | 
			
		||||
    soap = _obj2soap(klass, obj, type_qname)
 | 
			
		||||
    if @allow_original_mapping
 | 
			
		||||
      addextend2soap(soap, obj)
 | 
			
		||||
    end
 | 
			
		||||
| 
						 | 
				
			
			@ -369,7 +358,7 @@ class Registry
 | 
			
		|||
 | 
			
		||||
private
 | 
			
		||||
 | 
			
		||||
  def _obj2soap(klass, obj, type)
 | 
			
		||||
  def _obj2soap(klass, obj, type_qname)
 | 
			
		||||
    ret = nil
 | 
			
		||||
    if obj.is_a?(SOAPStruct) or obj.is_a?(SOAPArray)
 | 
			
		||||
      obj.replace do |ele|
 | 
			
		||||
| 
						 | 
				
			
			@ -380,7 +369,7 @@ private
 | 
			
		|||
      return obj
 | 
			
		||||
    end
 | 
			
		||||
    begin 
 | 
			
		||||
      ret = @map.obj2soap(klass, obj) ||
 | 
			
		||||
      ret = @map.obj2soap(klass, obj, type_qname) ||
 | 
			
		||||
        @default_factory.obj2soap(klass, obj, nil, self)
 | 
			
		||||
    rescue MappingError
 | 
			
		||||
    end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Ruby type mapping factory.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Ruby type mapping factory.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module SOAP
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Base type mapping definition
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Base type mapping definition
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module SOAP
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - WSDL mapping registry.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - WSDL mapping registry.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/baseData'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,25 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Marshalling/Unmarshalling Ruby's object using SOAP Encoding.
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Marshalling/Unmarshalling Ruby's object using SOAP Encoding.
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# The original version of the marshal.rb to marshal/unmarshal Ruby's object
 | 
			
		||||
# using SOAP Encoding was written by Michael Neumann.  His valuable comments
 | 
			
		||||
# and his program inspired me to write this.  Thanks.
 | 
			
		||||
# 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/mapping"
 | 
			
		||||
| 
						 | 
				
			
			@ -58,7 +42,9 @@ module Marshal
 | 
			
		|||
 | 
			
		||||
    def unmarshal(stream, mapping_registry = MarshalMappingRegistry)
 | 
			
		||||
      header, body = SOAP::Processor.unmarshal(stream)
 | 
			
		||||
      #Mapping.soap2obj(body.root_node, mapping_registry)
 | 
			
		||||
      if body.nil?
 | 
			
		||||
	raise ArgumentError.new("Illegal SOAP marshal format.")
 | 
			
		||||
      end
 | 
			
		||||
      Mapping.soap2obj(body.root_node, mapping_registry)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - net/http wrapper
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - net/http wrapper
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'net/http'
 | 
			
		||||
| 
						 | 
				
			
			@ -25,6 +14,13 @@ module SOAP
 | 
			
		|||
 | 
			
		||||
class NetHttpClient
 | 
			
		||||
 | 
			
		||||
  SSLEnabled = begin
 | 
			
		||||
      require 'net/https'
 | 
			
		||||
      true
 | 
			
		||||
    rescue LoadError
 | 
			
		||||
      false
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
  attr_accessor :proxy
 | 
			
		||||
  attr_accessor :no_proxy
 | 
			
		||||
  attr_accessor :debug_dev
 | 
			
		||||
| 
						 | 
				
			
			@ -86,20 +82,39 @@ class NetHttpClient
 | 
			
		|||
private
 | 
			
		||||
 | 
			
		||||
  def start(url)
 | 
			
		||||
    http = create_connection(url)
 | 
			
		||||
    response = nil
 | 
			
		||||
    http.start { |worker|
 | 
			
		||||
      response, = yield(worker)
 | 
			
		||||
      worker.finish
 | 
			
		||||
    }
 | 
			
		||||
    @debug_dev << response.body if @debug_dev
 | 
			
		||||
    response
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def create_connection(url)
 | 
			
		||||
    proxy_host = proxy_port = nil
 | 
			
		||||
    unless no_proxy?(url)
 | 
			
		||||
      proxy_host = @proxy.host
 | 
			
		||||
      proxy_port = @proxy.port
 | 
			
		||||
    end
 | 
			
		||||
    response = nil
 | 
			
		||||
    Net::HTTP::Proxy(proxy_host, proxy_port).start(url.host, url.port) { |http|
 | 
			
		||||
      if http.respond_to?(:set_debug_output)
 | 
			
		||||
	http.set_debug_output(@debug_dev)
 | 
			
		||||
    http = Net::HTTP::Proxy(proxy_host, proxy_port).new(url.host, url.port)
 | 
			
		||||
    if http.respond_to?(:set_debug_output)
 | 
			
		||||
      http.set_debug_output(@debug_dev)
 | 
			
		||||
    end
 | 
			
		||||
    case url
 | 
			
		||||
    when URI::HTTPS
 | 
			
		||||
      if SSLEnabled
 | 
			
		||||
	http.use_ssl = true
 | 
			
		||||
      else
 | 
			
		||||
	raise RuntimeError.new("Cannot connect to #{url} (OpenSSL is not installed.)")
 | 
			
		||||
      end
 | 
			
		||||
      response, = yield(http)
 | 
			
		||||
      http.finish
 | 
			
		||||
    }
 | 
			
		||||
    response
 | 
			
		||||
    when URI::HTTP
 | 
			
		||||
      # OK
 | 
			
		||||
    else
 | 
			
		||||
      raise RuntimeError.new("Cannot connect to #{url} (Not HTTP.)")
 | 
			
		||||
    end
 | 
			
		||||
    http
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  NO_PROXY_HOSTS = ['localhost']
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP XML Instance Parser library.
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP XML Instance Parser library.
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/ns'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - marshal/unmarshal interface.
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - marshal/unmarshal interface.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/datatypes'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - CGI stub library
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - CGI stub library
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/streamHandler'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP RPC driver
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP RPC driver
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/soap'
 | 
			
		||||
| 
						 | 
				
			
			@ -35,51 +24,63 @@ public
 | 
			
		|||
 | 
			
		||||
  attr_accessor :mapping_registry
 | 
			
		||||
  attr_accessor :soapaction
 | 
			
		||||
  attr_reader :endpoint_url
 | 
			
		||||
  attr_reader :wiredump_dev
 | 
			
		||||
  attr_reader :wiredump_file_base
 | 
			
		||||
  attr_reader :httpproxy
 | 
			
		||||
  attr_reader :streamhandler
 | 
			
		||||
 | 
			
		||||
  def initialize(endpoint_url, namespace, soapaction = nil)
 | 
			
		||||
    @endpoint_url = endpoint_url
 | 
			
		||||
    @namespace = namespace
 | 
			
		||||
    @mapping_registry = nil      # for unmarshal
 | 
			
		||||
    @soapaction = soapaction
 | 
			
		||||
    @wiredump_dev = nil
 | 
			
		||||
    @wiredump_file_base = nil
 | 
			
		||||
    @httpproxy = ENV['httpproxy'] || ENV['HTTP_PROXY']
 | 
			
		||||
    @handler = HTTPPostStreamHandler.new(@endpoint_url, @httpproxy,
 | 
			
		||||
    name = 'http_proxy'
 | 
			
		||||
    @httpproxy = ENV[name] || ENV[name.upcase]
 | 
			
		||||
    @streamhandler = HTTPPostStreamHandler.new(endpoint_url, @httpproxy,
 | 
			
		||||
      XSD::Charset.encoding_label)
 | 
			
		||||
    @proxy = Proxy.new(@handler, @soapaction)
 | 
			
		||||
    @proxy = Proxy.new(@streamhandler, @soapaction)
 | 
			
		||||
    @proxy.allow_unqualified_element = true
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def inspect
 | 
			
		||||
    "#<#{self.class}:#{@streamhandler.inspect}>"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def endpoint_url
 | 
			
		||||
    @streamhandler.endpoint_url
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def endpoint_url=(endpoint_url)
 | 
			
		||||
    @endpoint_url = endpoint_url
 | 
			
		||||
    if @handler
 | 
			
		||||
      @handler.endpoint_url = @endpoint_url
 | 
			
		||||
      @handler.reset
 | 
			
		||||
    end
 | 
			
		||||
    @streamhandler.endpoint_url = endpoint_url
 | 
			
		||||
    @streamhandler.reset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def wiredump_dev=(dev)
 | 
			
		||||
    @wiredump_dev = dev
 | 
			
		||||
    if @handler
 | 
			
		||||
      @handler.wiredump_dev = @wiredump_dev
 | 
			
		||||
      @handler.reset
 | 
			
		||||
    end
 | 
			
		||||
    @streamhandler.wiredump_dev = @wiredump_dev
 | 
			
		||||
    @streamhandler.reset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def wiredump_file_base=(base)
 | 
			
		||||
    @wiredump_file_base = base
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def httpproxy
 | 
			
		||||
    @httpproxy
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def httpproxy=(httpproxy)
 | 
			
		||||
    @httpproxy = httpproxy
 | 
			
		||||
    if @handler
 | 
			
		||||
      @handler.proxy = @httpproxy
 | 
			
		||||
      @handler.reset
 | 
			
		||||
    end
 | 
			
		||||
    @streamhandler.proxy = @httpproxy
 | 
			
		||||
    @streamhandler.reset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def mandatorycharset
 | 
			
		||||
    @proxy.mandatorycharset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def mandatorycharset=(mandatorycharset)
 | 
			
		||||
    @proxy.mandatorycharset = mandatorycharset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def default_encodingstyle
 | 
			
		||||
| 
						 | 
				
			
			@ -126,7 +127,7 @@ public
 | 
			
		|||
  #
 | 
			
		||||
  def invoke(headers, body)
 | 
			
		||||
    if @wiredump_file_base
 | 
			
		||||
      @handler.wiredump_file_base =
 | 
			
		||||
      @streamhandler.wiredump_file_base =
 | 
			
		||||
	@wiredump_file_base + '_' << body.elename.name
 | 
			
		||||
    end
 | 
			
		||||
    @proxy.invoke(headers, body)
 | 
			
		||||
| 
						 | 
				
			
			@ -136,7 +137,7 @@ public
 | 
			
		|||
    # Convert parameters: params array => SOAPArray => members array
 | 
			
		||||
    params = Mapping.obj2soap(params, @mapping_registry).to_a
 | 
			
		||||
    if @wiredump_file_base
 | 
			
		||||
      @handler.wiredump_file_base = @wiredump_file_base + '_' << name
 | 
			
		||||
      @streamhandler.wiredump_file_base = @wiredump_file_base + '_' << name
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    # Then, call @proxy.call like the following.
 | 
			
		||||
| 
						 | 
				
			
			@ -161,7 +162,7 @@ public
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  def reset_stream
 | 
			
		||||
    @handler.reset
 | 
			
		||||
    @streamhandler.reset
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
private
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - RPC element definition.
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - RPC element definition.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/baseData'
 | 
			
		||||
| 
						 | 
				
			
			@ -180,10 +169,10 @@ class SOAPMethodRequest < SOAPMethod
 | 
			
		|||
    params.each do |param|
 | 
			
		||||
      param_name = "p#{ i }"
 | 
			
		||||
      i += 1
 | 
			
		||||
      param_def << [IN, nil, param_name]
 | 
			
		||||
      param_def << [IN, param_name, nil]
 | 
			
		||||
      param_value << [param_name, param]
 | 
			
		||||
    end
 | 
			
		||||
    param_def << [RETVAL, nil, 'return']
 | 
			
		||||
    param_def << [RETVAL, 'return', nil]
 | 
			
		||||
    o = new(qname, param_def)
 | 
			
		||||
    o.set_param(param_value)
 | 
			
		||||
    o
 | 
			
		||||
| 
						 | 
				
			
			@ -236,7 +225,7 @@ class SOAPMethodResponse < SOAPMethod
 | 
			
		|||
 | 
			
		||||
  def retval=(retval)
 | 
			
		||||
    @retval = retval
 | 
			
		||||
    @retval.elename = @retval.elename.dup_name('return')
 | 
			
		||||
    @retval.elename = @retval.elename.dup_name(@retval_name || 'return')
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def each
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - RPC Proxy library.
 | 
			
		||||
Copyright (C) 2000, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - RPC Proxy library.
 | 
			
		||||
# Copyright (C) 2000, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/soap'
 | 
			
		||||
| 
						 | 
				
			
			@ -35,13 +24,16 @@ class Proxy
 | 
			
		|||
public
 | 
			
		||||
 | 
			
		||||
  attr_accessor :soapaction
 | 
			
		||||
  attr_accessor :allow_unqualified_element, :default_encodingstyle
 | 
			
		||||
  attr_accessor :mandatorycharset
 | 
			
		||||
  attr_accessor :allow_unqualified_element
 | 
			
		||||
  attr_accessor :default_encodingstyle
 | 
			
		||||
  attr_reader :method
 | 
			
		||||
 | 
			
		||||
  def initialize(stream_handler, soapaction = nil)
 | 
			
		||||
    @handler = stream_handler
 | 
			
		||||
  def initialize(streamhandler, soapaction = nil)
 | 
			
		||||
    @streamhandler = streamhandler
 | 
			
		||||
    @soapaction = soapaction
 | 
			
		||||
    @method = {}
 | 
			
		||||
    @mandatorycharset = nil
 | 
			
		||||
    @allow_unqualified_element = false
 | 
			
		||||
    @default_encodingstyle = nil
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			@ -100,13 +92,13 @@ public
 | 
			
		|||
    end
 | 
			
		||||
    opt = create_options
 | 
			
		||||
    send_string = Processor.marshal(req_header, req_body, opt)
 | 
			
		||||
    data = @handler.send(send_string, soapaction)
 | 
			
		||||
    data = @streamhandler.send(send_string, soapaction)
 | 
			
		||||
    if data.receive_string.empty?
 | 
			
		||||
      return nil, nil
 | 
			
		||||
    end
 | 
			
		||||
    res_charset = StreamHandler.parse_media_type(data.receive_contenttype)
 | 
			
		||||
    opt = create_options
 | 
			
		||||
    opt[:charset] = res_charset
 | 
			
		||||
    opt[:charset] = @mandatorycharset ||
 | 
			
		||||
      StreamHandler.parse_media_type(data.receive_contenttype)
 | 
			
		||||
    res_header, res_body = Processor.unmarshal(data.receive_string, opt)
 | 
			
		||||
    return res_header, res_body
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - RPC Routing library
 | 
			
		||||
Copyright (C) 2001, 2002  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - RPC Routing library
 | 
			
		||||
# Copyright (C) 2001, 2002  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/soap'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - RPC utility.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - RPC utility.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module SOAP
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP handler servlet for WEBrick
 | 
			
		||||
Copyright (C) 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP handler servlet for WEBrick
 | 
			
		||||
# Copyright (C) 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'webrick/httpservlet/abstract'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - WEBrick Server
 | 
			
		||||
Copyright (C) 2003 by NAKAMURA, Hiroshi
 | 
			
		||||
# SOAP4R - WEBrick Server
 | 
			
		||||
# Copyright (C) 2003 by NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'logger'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Base definitions.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# soap/soap.rb: SOAP4R - Base definitions.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - Stream handler.
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - Stream handler.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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/soap'
 | 
			
		||||
| 
						 | 
				
			
			@ -73,7 +62,7 @@ class StreamHandler
 | 
			
		|||
    end
 | 
			
		||||
    charset = $1
 | 
			
		||||
    charset.gsub!(/"/, '') if charset
 | 
			
		||||
    charset
 | 
			
		||||
    charset || 'us-ascii'
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def self.create_media_type(charset)
 | 
			
		||||
| 
						 | 
				
			
			@ -90,6 +79,7 @@ public
 | 
			
		|||
  attr_accessor :wiredump_dev
 | 
			
		||||
  attr_accessor :wiredump_file_base
 | 
			
		||||
  attr_accessor :charset
 | 
			
		||||
  attr_reader :client
 | 
			
		||||
  
 | 
			
		||||
  NofRetry = 10       	# [times]
 | 
			
		||||
  ConnectTimeout = 20   # [sec]
 | 
			
		||||
| 
						 | 
				
			
			@ -108,6 +98,10 @@ public
 | 
			
		|||
    @client.session_manager.receive_timeout = ReceiveTimeout
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def inspect
 | 
			
		||||
    "#<#{self.class}:#{endpoint_url}>"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def proxy=(proxy)
 | 
			
		||||
    @proxy = proxy
 | 
			
		||||
    @client.proxy = @proxy
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
SOAP4R - SOAP WSDL driver
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# SOAP4R - SOAP WSDL driver
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/parser'
 | 
			
		||||
| 
						 | 
				
			
			@ -43,6 +32,10 @@ class WSDLDriverFactory
 | 
			
		|||
    @logdev = logdev
 | 
			
		||||
    @wsdl = import(wsdl)
 | 
			
		||||
  end
 | 
			
		||||
  
 | 
			
		||||
  def inspect
 | 
			
		||||
    "#<#{self.class}:#{@wsdl.name}>"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def create_driver(servicename = nil, portname = nil, opt = {})
 | 
			
		||||
    service = if servicename
 | 
			
		||||
| 
						 | 
				
			
			@ -105,6 +98,7 @@ class WSDLDriver
 | 
			
		|||
  __attr_proxy :wiredump_dev, true
 | 
			
		||||
  __attr_proxy :wiredump_file_base, true
 | 
			
		||||
  __attr_proxy :httpproxy, true
 | 
			
		||||
  __attr_proxy :mandatorycharset, true		# force using charset
 | 
			
		||||
 | 
			
		||||
  __attr_proxy :default_encodingstyle, true
 | 
			
		||||
  __attr_proxy :allow_unqualified_element, true
 | 
			
		||||
| 
						 | 
				
			
			@ -121,14 +115,16 @@ class WSDLDriver
 | 
			
		|||
    include Logger::Severity
 | 
			
		||||
    include SOAP
 | 
			
		||||
 | 
			
		||||
    attr_reader :wsdl
 | 
			
		||||
    attr_reader :port
 | 
			
		||||
    attr_reader :opt
 | 
			
		||||
    attr_accessor :logdev
 | 
			
		||||
    attr_accessor :mapping_registry
 | 
			
		||||
    attr_accessor :wsdl_mapping_registry
 | 
			
		||||
    attr_reader :endpoint_url
 | 
			
		||||
    attr_reader :wiredump_dev
 | 
			
		||||
    attr_reader :wiredump_file_base
 | 
			
		||||
    attr_reader :httpproxy
 | 
			
		||||
    attr_accessor :mandatorycharset
 | 
			
		||||
 | 
			
		||||
    attr_accessor :default_encodingstyle
 | 
			
		||||
    attr_accessor :allow_unqualified_element
 | 
			
		||||
| 
						 | 
				
			
			@ -220,11 +216,9 @@ class WSDLDriver
 | 
			
		|||
      @opt = opt.dup
 | 
			
		||||
      @mapping_registry = nil		# for rpc unmarshal
 | 
			
		||||
      @wsdl_mapping_registry = nil	# for rpc marshal
 | 
			
		||||
      @endpoint_url = nil
 | 
			
		||||
      @wiredump_dev = nil
 | 
			
		||||
      @wiredump_file_base = nil
 | 
			
		||||
      name = 'http_proxy'
 | 
			
		||||
      @httpproxy = ENV[name] || ENV[name.upcase]
 | 
			
		||||
      @mandatorycharset = nil
 | 
			
		||||
 | 
			
		||||
      @wsdl_elements = @wsdl.collect_elements
 | 
			
		||||
      @wsdl_types = @wsdl.collect_complextypes
 | 
			
		||||
| 
						 | 
				
			
			@ -235,7 +229,8 @@ class WSDLDriver
 | 
			
		|||
      @allow_unqualified_element = true
 | 
			
		||||
      @generate_explicit_type = false
 | 
			
		||||
 | 
			
		||||
      create_handler
 | 
			
		||||
      create_streamhandler(@port.soap_address.location,
 | 
			
		||||
	ENV['http_proxy'] || ENV['HTTP_PROXY'])
 | 
			
		||||
      @operations = {}
 | 
			
		||||
      # Convert a map which key is QName, to a Hash which key is String.
 | 
			
		||||
      @port.inputoperation_map.each do |op_name, op_info|
 | 
			
		||||
| 
						 | 
				
			
			@ -244,21 +239,20 @@ class WSDLDriver
 | 
			
		|||
      end
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def endpoint_url
 | 
			
		||||
      @streamhandler.endpoint_url
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def endpoint_url=(endpoint_url)
 | 
			
		||||
      @endpoint_url = endpoint_url
 | 
			
		||||
      if @handler
 | 
			
		||||
	@handler.endpoint_url = @endpoint_url
 | 
			
		||||
	@handler.reset
 | 
			
		||||
      end
 | 
			
		||||
      log(DEBUG) { "endpoint_url=: set endpoint_url #{ @endpoint_url }." }
 | 
			
		||||
      @streamhandler.endpoint_url = endpoint_url
 | 
			
		||||
      @streamhandler.reset
 | 
			
		||||
      log(DEBUG) { "endpoint_url=: set endpoint_url #{ endpoint_url }." }
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def wiredump_dev=(dev)
 | 
			
		||||
      @wiredump_dev = dev
 | 
			
		||||
      if @handler
 | 
			
		||||
	@handler.wiredump_dev = @wiredump_dev
 | 
			
		||||
	@handler.reset
 | 
			
		||||
      end
 | 
			
		||||
      @streamhandler.wiredump_dev = @wiredump_dev
 | 
			
		||||
      @streamhandler.reset
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def wiredump_file_base=(base)
 | 
			
		||||
| 
						 | 
				
			
			@ -266,16 +260,13 @@ class WSDLDriver
 | 
			
		|||
    end
 | 
			
		||||
 | 
			
		||||
    def httpproxy=(httpproxy)
 | 
			
		||||
      @httpproxy = httpproxy
 | 
			
		||||
      if @handler
 | 
			
		||||
	@handler.proxy = @httpproxy
 | 
			
		||||
	@handler.reset
 | 
			
		||||
      end
 | 
			
		||||
      log(DEBUG) { "httpproxy=: set httpproxy #{ @httpproxy }." }
 | 
			
		||||
      @streamhandler.proxy = httpproxy
 | 
			
		||||
      @streamhandler.reset
 | 
			
		||||
      log(DEBUG) { "httpproxy=: set httpproxy #{ httpproxy }." }
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def reset_stream
 | 
			
		||||
      @handler.reset
 | 
			
		||||
      @streamhandler.reset
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def rpc_send(method_name, *params)
 | 
			
		||||
| 
						 | 
				
			
			@ -292,7 +283,8 @@ class WSDLDriver
 | 
			
		|||
      req_body = SOAPBody.new(method)
 | 
			
		||||
 | 
			
		||||
      if @wiredump_file_base
 | 
			
		||||
	@handler.wiredump_file_base = @wiredump_file_base + '_' << method_name
 | 
			
		||||
	@streamhandler.wiredump_file_base =
 | 
			
		||||
	  @wiredump_file_base + '_' << method_name
 | 
			
		||||
      end
 | 
			
		||||
 | 
			
		||||
      begin
 | 
			
		||||
| 
						 | 
				
			
			@ -338,11 +330,10 @@ class WSDLDriver
 | 
			
		|||
 | 
			
		||||
  private
 | 
			
		||||
 | 
			
		||||
    def create_handler
 | 
			
		||||
      endpoint_url = @endpoint_url || @port.soap_address.location
 | 
			
		||||
      @handler = HTTPPostStreamHandler.new(endpoint_url, @httpproxy,
 | 
			
		||||
    def create_streamhandler(endpoint_url, httpproxy)
 | 
			
		||||
      @streamhandler = HTTPPostStreamHandler.new(endpoint_url, httpproxy,
 | 
			
		||||
	XSD::Charset.encoding_label)
 | 
			
		||||
      @handler.wiredump_dev = @wiredump_dev
 | 
			
		||||
      @streamhandler.wiredump_dev = @wiredump_dev
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def create_method_obj(names, params)
 | 
			
		||||
| 
						 | 
				
			
			@ -356,13 +347,13 @@ class WSDLDriver
 | 
			
		|||
    def invoke(req_header, req_body, op_info, opt)
 | 
			
		||||
      send_string = Processor.marshal(req_header, req_body, opt)
 | 
			
		||||
      log(DEBUG) { "invoke: sending string #{ send_string }" }
 | 
			
		||||
      data = @handler.send(send_string, op_info.soapaction)
 | 
			
		||||
      data = @streamhandler.send(send_string, op_info.soapaction)
 | 
			
		||||
      log(DEBUG) { "invoke: received string #{ data.receive_string }" }
 | 
			
		||||
      if data.receive_string.empty?
 | 
			
		||||
	return nil, nil
 | 
			
		||||
      end
 | 
			
		||||
      res_charset = StreamHandler.parse_media_type(data.receive_contenttype)
 | 
			
		||||
      opt[:charset] = res_charset
 | 
			
		||||
      opt[:charset] = @mandatorycharset ||
 | 
			
		||||
	StreamHandler.parse_media_type(data.receive_contenttype)
 | 
			
		||||
      res_header, res_body = Processor.unmarshal(data.receive_string, opt)
 | 
			
		||||
      return res_header, res_body
 | 
			
		||||
    end
 | 
			
		||||
| 
						 | 
				
			
			@ -483,6 +474,10 @@ class WSDLDriver
 | 
			
		|||
  def initialize(wsdl, port, logdev, opt)
 | 
			
		||||
    @servant = Servant__.new(self, wsdl, port, logdev, opt)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def inspect
 | 
			
		||||
    "#<#{self.class}:#{@servant.port.name}>"
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL binding definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL binding definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL data definitions.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL data definitions.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/documentation'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL definitions.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL definitions.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			@ -53,6 +42,11 @@ class Definitions < Info
 | 
			
		|||
    @root = self
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def inspect
 | 
			
		||||
    name = @name || '(unnamed)'
 | 
			
		||||
    "#<#{self.class}:#{name}>"
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def targetnamespace=(targetnamespace)
 | 
			
		||||
    @targetnamespace = targetnamespace
 | 
			
		||||
    if @name
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP documentation element.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP documentation element.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL import definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL import definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,23 +1,13 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL importer library.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL importer library.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
require 'wsdl/parser'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module WSDL
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL information base.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL information base.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module WSDL
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL message definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL message definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL operation definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL operation definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			@ -49,7 +38,7 @@ class Operation < Info
 | 
			
		|||
    @parameter_order = nil
 | 
			
		||||
    @input = nil
 | 
			
		||||
    @output = nil
 | 
			
		||||
    @fault = nil
 | 
			
		||||
    @fault = []
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def targetnamespace
 | 
			
		||||
| 
						 | 
				
			
			@ -76,10 +65,6 @@ class Operation < Info
 | 
			
		|||
    sort_parts(output.find_message.parts)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def faultparts
 | 
			
		||||
    sort_parts(fault.find_message.parts)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def outputname
 | 
			
		||||
    XSD::QName.new(targetnamespace,
 | 
			
		||||
      output.name ? output.name.name : @name.name + 'Response')
 | 
			
		||||
| 
						 | 
				
			
			@ -97,7 +82,7 @@ class Operation < Info
 | 
			
		|||
      o
 | 
			
		||||
    when FaultName
 | 
			
		||||
      o = Param.new
 | 
			
		||||
      @fault = o
 | 
			
		||||
      @fault << o
 | 
			
		||||
      o
 | 
			
		||||
    when DocumentationName
 | 
			
		||||
      o = Documentation.new
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL bound operation definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL bound operation definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			@ -35,7 +24,7 @@ class OperationBinding < Info
 | 
			
		|||
    @name = nil
 | 
			
		||||
    @input = nil
 | 
			
		||||
    @output = nil
 | 
			
		||||
    @fault = nil
 | 
			
		||||
    @fault = []
 | 
			
		||||
    @soapoperation = nil
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -63,7 +52,7 @@ class OperationBinding < Info
 | 
			
		|||
      o
 | 
			
		||||
    when FaultName
 | 
			
		||||
      o = Param.new
 | 
			
		||||
      @fault = o
 | 
			
		||||
      @fault << o
 | 
			
		||||
      o
 | 
			
		||||
    when SOAPOperationName
 | 
			
		||||
      o = WSDL::SOAP::Operation.new
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL param definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL param definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL XML Instance parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL XML Instance parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL part definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL part definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL port definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL port definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL portType definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL portType definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL service definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL service definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP address definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP address definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP binding definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP binding definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - SOAP complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - SOAP complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/xmlSchema/complexType'
 | 
			
		||||
| 
						 | 
				
			
			@ -31,7 +20,11 @@ class ComplexType < Info
 | 
			
		|||
 | 
			
		||||
  def check_type
 | 
			
		||||
    if content
 | 
			
		||||
      :TYPE_STRUCT
 | 
			
		||||
      if content.elements.size == 1 and content.elements[0].maxoccurs != 1
 | 
			
		||||
	:TYPE_ARRAY
 | 
			
		||||
      else
 | 
			
		||||
	:TYPE_STRUCT
 | 
			
		||||
      end
 | 
			
		||||
    elsif complexcontent and complexcontent.base == ::SOAP::ValueArrayName
 | 
			
		||||
      :TYPE_ARRAY
 | 
			
		||||
    else
 | 
			
		||||
| 
						 | 
				
			
			@ -70,10 +63,19 @@ class ComplexType < Info
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  def find_arytype
 | 
			
		||||
    complexcontent.attributes.each do |attribute|
 | 
			
		||||
      if attribute.ref == ::SOAP::AttrArrayTypeName
 | 
			
		||||
	return attribute.arytype
 | 
			
		||||
    unless compoundtype == :TYPE_ARRAY
 | 
			
		||||
      raise RuntimeError.new("Assert: not for array")
 | 
			
		||||
    end
 | 
			
		||||
    if complexcontent
 | 
			
		||||
      complexcontent.attributes.each do |attribute|
 | 
			
		||||
	if attribute.ref == ::SOAP::AttrArrayTypeName
 | 
			
		||||
	  return attribute.arytype
 | 
			
		||||
	end
 | 
			
		||||
      end
 | 
			
		||||
    elsif content.elements.size == 1 and content.elements[0].maxoccurs != 1
 | 
			
		||||
      return content.elements[0].type
 | 
			
		||||
    else
 | 
			
		||||
      raise RuntimeError.new("Assert: Unknown array definition.")
 | 
			
		||||
    end
 | 
			
		||||
    nil
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			@ -81,9 +83,6 @@ class ComplexType < Info
 | 
			
		|||
private
 | 
			
		||||
 | 
			
		||||
  def content_arytype
 | 
			
		||||
    unless compoundtype == :TYPE_ARRAY
 | 
			
		||||
      raise RuntimeError.new("Assert: not for array")
 | 
			
		||||
    end
 | 
			
		||||
    arytype = find_arytype
 | 
			
		||||
    ns = arytype.namespace
 | 
			
		||||
    name = arytype.name.sub(/\[(?:,)*\]$/, '')
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP binding data definitions.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP binding data definitions.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL additional definitions for SOAP.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL additional definitions for SOAP.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP body definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL SOAP operation definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL SOAP operation definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL types definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL types definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - Base definitions.
 | 
			
		||||
Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - Base definitions.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema any definition for WSDL.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema any definition for WSDL.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema attribute definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema attribute definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexContent definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexContent definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema data definitions.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema data definitions.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/xmlSchema/schema'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema element definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema element definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema import definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema import definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - WSDL XML Instance parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - WSDL XML Instance parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema schema definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema schema definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema complexType definition for WSDL.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
WSDL4R - XMLSchema unique element.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# WSDL4R - XMLSchema unique element.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'wsdl/info'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - Charset handling library.
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - Charset handling library.
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module XSD
 | 
			
		||||
| 
						 | 
				
			
			@ -40,15 +29,15 @@ public
 | 
			
		|||
      @encoding = 'UTF8'
 | 
			
		||||
      EncodingConvertMap[['UTF8', 'EUC' ]] = Proc.new { |str| IconvCharset.safe_iconv("euc-jp", "utf-8", str) }
 | 
			
		||||
      EncodingConvertMap[['EUC' , 'UTF8']] = Proc.new { |str| IconvCharset.safe_iconv("utf-8", "euc-jp", str) }
 | 
			
		||||
      EncodingConvertMap[['EUC' , 'SJIS']] = Proc.new { |str| IconvCharset.safe_iconv("shift-jis", "euc-jp", str) }
 | 
			
		||||
      EncodingConvertMap[['EUC' , 'SJIS']] = Proc.new { |str| IconvCharset.safe_iconv("shift_jis", "euc-jp", str) }
 | 
			
		||||
      if /(mswin|bccwin|mingw|cygwin|emx)/ =~ RUBY_PLATFORM
 | 
			
		||||
	EncodingConvertMap[['UTF8', 'SJIS']] = Proc.new { |str| IconvCharset.safe_iconv("cp932", "utf-8", str) }
 | 
			
		||||
       	EncodingConvertMap[['SJIS', 'UTF8']] = Proc.new { |str| IconvCharset.safe_iconv("utf-8", "cp932", str) }
 | 
			
		||||
	EncodingConvertMap[['SJIS', 'EUC' ]] = Proc.new { |str| IconvCharset.safe_iconv("euc-jp", "cp932", str) }
 | 
			
		||||
      else
 | 
			
		||||
	EncodingConvertMap[['UTF8', 'SJIS']] = Proc.new { |str| IconvCharset.safe_iconv("shift-jis", "utf-8", str) }
 | 
			
		||||
	EncodingConvertMap[['SJIS', 'UTF8']] = Proc.new { |str| IconvCharset.safe_iconv("utf-8", "shift-jis", str) }
 | 
			
		||||
	EncodingConvertMap[['SJIS', 'EUC' ]] = Proc.new { |str| IconvCharset.safe_iconv("euc-jp", "shift-jis", str) }
 | 
			
		||||
	EncodingConvertMap[['UTF8', 'SJIS']] = Proc.new { |str| IconvCharset.safe_iconv("shift_jis", "utf-8", str) }
 | 
			
		||||
	EncodingConvertMap[['SJIS', 'UTF8']] = Proc.new { |str| IconvCharset.safe_iconv("utf-8", "shift_jis", str) }
 | 
			
		||||
	EncodingConvertMap[['SJIS', 'EUC' ]] = Proc.new { |str| IconvCharset.safe_iconv("euc-jp", "shift_jis", str) }
 | 
			
		||||
      end
 | 
			
		||||
    rescue LoadError
 | 
			
		||||
      begin
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML Schema Datatype implementation.
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML Schema Datatype implementation.
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML Schema Datatype 1999 support
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML Schema Datatype 1999 support
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/datatypes'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - Charset handling with iconv.
 | 
			
		||||
Copyright (C) 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - Charset handling with iconv.
 | 
			
		||||
# Copyright (C) 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'iconv'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - WSDL named element collection.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - WSDL named element collection.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module XSD
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML Schema Namespace library
 | 
			
		||||
Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML Schema Namespace library
 | 
			
		||||
# Copyright (C) 2000, 2001, 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/datatypes'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML QName definition.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML QName definition.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module XSD
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML Instance parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML Instance parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/xmlparser/parser'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XML Instance parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XML Instance parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/qname'
 | 
			
		||||
| 
						 | 
				
			
			@ -57,7 +46,7 @@ public
 | 
			
		|||
 | 
			
		||||
  def initialize(host, opt = {})
 | 
			
		||||
    @host = host
 | 
			
		||||
    @charset = opt[:charset] || 'us-ascii'
 | 
			
		||||
    @charset = opt[:charset] || nil
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def parse(string_or_readable)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - REXMLParser XML parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - REXMLParser XML parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/xmlparser'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XMLParser XML parser library.
 | 
			
		||||
Copyright (C) 2001, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XMLParser XML parser library.
 | 
			
		||||
# Copyright (C) 2001, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/xmlparser'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,20 +1,9 @@
 | 
			
		|||
=begin
 | 
			
		||||
XSD4R - XMLScan XML parser library.
 | 
			
		||||
Copyright (C) 2002, 2003  NAKAMURA, Hiroshi.
 | 
			
		||||
# XSD4R - XMLScan XML parser library.
 | 
			
		||||
# Copyright (C) 2002, 2003  NAKAMURA, Hiroshi <nahi@ruby-lang.org>.
 | 
			
		||||
 | 
			
		||||
This program is free software; you can redistribute it and/or modify it under
 | 
			
		||||
the terms of the GNU General Public License as published by the Free Software
 | 
			
		||||
Foundation; either version 2 of the License, or (at your option) any later
 | 
			
		||||
version.
 | 
			
		||||
 | 
			
		||||
This program is distributed in the hope that it will be useful, but WITHOUT ANY
 | 
			
		||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 | 
			
		||||
PRATICULAR PURPOSE. See the GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
You should have received a copy of the GNU General Public License along with
 | 
			
		||||
this program; if not, write to the Free Software Foundation, Inc., 675 Mass
 | 
			
		||||
Ave, Cambridge, MA 02139, USA.
 | 
			
		||||
=end
 | 
			
		||||
# 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 'xsd/xmlparser'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,7 +27,7 @@ File.open("digraph_marshalled_string.soap", "wb") do |f|
 | 
			
		|||
  SOAP::Marshal.dump(n1, f)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
marshalledString = File.open("digraph_marshalled_string.soap").read
 | 
			
		||||
marshalledString = File.open("digraph_marshalled_string.soap") { |f| f.read }
 | 
			
		||||
 | 
			
		||||
puts marshalledString
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,7 +30,7 @@ end
 | 
			
		|||
=end
 | 
			
		||||
 | 
			
		||||
# You must get 'developer's token" from http://associates.amazon.com/exec/panama/associates/ntg/browse/-/1067662 to use Amazon Web Services 2.0.
 | 
			
		||||
#devtag = File.open(File.expand_path("~/.amazon_key")).read.chomp
 | 
			
		||||
#devtag = File.open(File.expand_path("~/.amazon_key")) { |f| f.read }.chomp
 | 
			
		||||
devtag = nil
 | 
			
		||||
 | 
			
		||||
# v2: AMAZON_WSDL = 'http://soap.amazon.com/schemas2/AmazonWebServices.wsdl'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -37,7 +37,7 @@ obj = GoogleSearchPort.new(endpoint_url)
 | 
			
		|||
#    N/A
 | 
			
		||||
#
 | 
			
		||||
key = q = start = maxResults = filter = restrict = safeSearch = lr = ie = oe = nil
 | 
			
		||||
key = File.open(File.expand_path("~/.google_key")).read.chomp
 | 
			
		||||
key = File.open(File.expand_path("~/.google_key")) { |f| f.read }.chomp
 | 
			
		||||
q = "Ruby"
 | 
			
		||||
start = 0
 | 
			
		||||
maxResults = 10
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,7 @@ require 'soap/wsdlDriver'
 | 
			
		|||
 | 
			
		||||
word = ARGV.shift
 | 
			
		||||
# You must get key from http://www.google.com/apis/ to use Google Web APIs.
 | 
			
		||||
key = File.open(File.expand_path("~/.google_key")).read.chomp
 | 
			
		||||
key = File.open(File.expand_path("~/.google_key")) { |f| f.read }.chomp
 | 
			
		||||
 | 
			
		||||
GOOGLE_WSDL = 'http://api.google.com/GoogleSearch.wsdl'
 | 
			
		||||
# GOOGLE_WSDL = 'GoogleSearch.wsdl'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										60
									
								
								test/wsdl/axisArray/axisArray.wsdl
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								test/wsdl/axisArray/axisArray.wsdl
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,60 @@
 | 
			
		|||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<wsdl:definitions name = "itemList"
 | 
			
		||||
    targetNamespace="urn:jp.gr.jin.rrr.example.itemList"
 | 
			
		||||
    xmlns:tns="urn:jp.gr.jin.rrr.example.itemList"
 | 
			
		||||
    xmlns:typens="urn:jp.gr.jin.rrr.example.itemListType"
 | 
			
		||||
    xmlns="http://schemas.xmlsoap.org/wsdl/"
 | 
			
		||||
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
 | 
			
		||||
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
 | 
			
		||||
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 | 
			
		||||
  <wsdl:types>
 | 
			
		||||
    <schema targetNamespace="urn:jp.gr.jin.rrr.example.itemListType"
 | 
			
		||||
	xmlns="http://www.w3.org/2001/XMLSchema">
 | 
			
		||||
      <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
 | 
			
		||||
      <complexType name="Item">
 | 
			
		||||
        <sequence>
 | 
			
		||||
          <element name="name" type="xsd:string"/>
 | 
			
		||||
        </sequence>
 | 
			
		||||
      </complexType>
 | 
			
		||||
      <complexType name="ItemList">
 | 
			
		||||
        <sequence>
 | 
			
		||||
          <element maxOccurs="unbounded" minOccurs="0" name="Item" type="typens:Item"/>
 | 
			
		||||
        </sequence>
 | 
			
		||||
      </complexType>
 | 
			
		||||
    </schema>
 | 
			
		||||
  </wsdl:types>
 | 
			
		||||
 | 
			
		||||
  <wsdl:message name="listItemRequest"/>
 | 
			
		||||
 | 
			
		||||
  <wsdl:message name="listItemResponse">
 | 
			
		||||
    <wsdl:part name="list" type="typens:ItemList"/>
 | 
			
		||||
  </wsdl:message>
 | 
			
		||||
 | 
			
		||||
  <wsdl:portType name="ItemListPortType">
 | 
			
		||||
    <wsdl:operation name="listItem">
 | 
			
		||||
      <wsdl:input message="tns:listItemRequest" name="listItemRequest"/>
 | 
			
		||||
      <wsdl:output message="tns:listItemResponse" name="listItemResponse"/>
 | 
			
		||||
    </wsdl:operation>
 | 
			
		||||
  </wsdl:portType>
 | 
			
		||||
 | 
			
		||||
  <wsdl:binding name="ItemListBinding" type="tns:ItemListPortType">
 | 
			
		||||
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
 | 
			
		||||
    <wsdl:operation name="listItem">
 | 
			
		||||
      <soap:operation soapAction=""/>
 | 
			
		||||
      <wsdl:input name="listItemRequest">
 | 
			
		||||
	<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
 | 
			
		||||
	    namespace="urn:jp.gr.jin.rrr.example.itemList" use="encoded"/>
 | 
			
		||||
      </wsdl:input>
 | 
			
		||||
      <wsdl:output name="listItemResponse">
 | 
			
		||||
	<soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
 | 
			
		||||
	    namespace="urn:jp.gr.jin.rrr.example.itemList" use="encoded"/>
 | 
			
		||||
      </wsdl:output>
 | 
			
		||||
    </wsdl:operation>
 | 
			
		||||
  </wsdl:binding>
 | 
			
		||||
 | 
			
		||||
  <wsdl:service name="ItemListService">
 | 
			
		||||
    <wsdl:port binding="tns:ItemListBinding" name="ItemListPort">
 | 
			
		||||
      <soap:address location="http://localhost:10080/"/>
 | 
			
		||||
    </wsdl:port>
 | 
			
		||||
  </wsdl:service>
 | 
			
		||||
</wsdl:definitions>
 | 
			
		||||
							
								
								
									
										27
									
								
								test/wsdl/axisArray/itemList.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								test/wsdl/axisArray/itemList.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,27 @@
 | 
			
		|||
# Generated by wsdl2ruby.rb with axisArray.wsdl.
 | 
			
		||||
 | 
			
		||||
# urn:jp.gr.jin.rrr.example.itemListType
 | 
			
		||||
class Item
 | 
			
		||||
  @@schema_type = "Item"
 | 
			
		||||
  @@schema_ns = "urn:jp.gr.jin.rrr.example.itemListType"
 | 
			
		||||
 | 
			
		||||
  def name
 | 
			
		||||
    @name
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def name=(value)
 | 
			
		||||
    @name = value
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def initialize(name = nil)
 | 
			
		||||
    @name = name
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
# urn:jp.gr.jin.rrr.example.itemListType
 | 
			
		||||
class ItemList < Array
 | 
			
		||||
  # Contents type should be dumped here...
 | 
			
		||||
  @@schema_type = "ItemList"
 | 
			
		||||
  @@schema_ns = "urn:jp.gr.jin.rrr.example.itemListType"
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										72
									
								
								test/wsdl/axisArray/test_axisarray.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								test/wsdl/axisArray/test_axisarray.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,72 @@
 | 
			
		|||
require 'test/unit'
 | 
			
		||||
require 'soap/processor'
 | 
			
		||||
require 'soap/mapping'
 | 
			
		||||
require 'soap/rpc/element'
 | 
			
		||||
require 'wsdl/importer'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module WSDL
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class TestAxisArray < Test::Unit::TestCase
 | 
			
		||||
  def setup
 | 
			
		||||
    dir = File.dirname(File.expand_path(__FILE__))
 | 
			
		||||
    $:.push(dir)
 | 
			
		||||
    require 'itemList.rb'
 | 
			
		||||
    $:.delete(dir)
 | 
			
		||||
    @xml =<<__EOX__
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 | 
			
		||||
  <soapenv:Body>
 | 
			
		||||
    <ns1:listItemResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="urn:jp.gr.jin.rrr.example.itemList">
 | 
			
		||||
      <list href="#id0"/>
 | 
			
		||||
    </ns1:listItemResponse>
 | 
			
		||||
    <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:ItemList" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="urn:jp.gr.jin.rrr.example.itemListType">
 | 
			
		||||
      <Item href="#id1"/>
 | 
			
		||||
      <Item href="#id2"/>
 | 
			
		||||
      <Item href="#id3"/>
 | 
			
		||||
    </multiRef>
 | 
			
		||||
    <multiRef id="id3" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns3:Item" xmlns:ns3="urn:jp.gr.jin.rrr.example.itemListType" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
 | 
			
		||||
      <name xsi:type="xsd:string">name3</name>
 | 
			
		||||
    </multiRef>
 | 
			
		||||
    <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:Item" xmlns:ns4="urn:jp.gr.jin.rrr.example.itemListType" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
 | 
			
		||||
      <name xsi:type="xsd:string">name1</name>
 | 
			
		||||
    </multiRef>
 | 
			
		||||
    <multiRef id="id2" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns5:Item" xmlns:ns5="urn:jp.gr.jin.rrr.example.itemListType" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
 | 
			
		||||
      <name xsi:type="xsd:string">name2</name>
 | 
			
		||||
    </multiRef>
 | 
			
		||||
  </soapenv:Body>
 | 
			
		||||
</soapenv:Envelope>
 | 
			
		||||
__EOX__
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def test_by_stub
 | 
			
		||||
    header, body = ::SOAP::Processor.unmarshal(@xml)
 | 
			
		||||
    ary = ::SOAP::Mapping.soap2obj(body.response)
 | 
			
		||||
    assert_equal(3, ary.size)
 | 
			
		||||
    assert_equal("name1", ary[0].name)
 | 
			
		||||
    assert_equal("name2", ary[1].name)
 | 
			
		||||
    assert_equal("name3", ary[2].name)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def test_by_wsdl
 | 
			
		||||
    wsdlfile = File.join(File.dirname(File.expand_path(__FILE__)), 'axisArray.wsdl')
 | 
			
		||||
    wsdl = WSDL::Importer.import(wsdlfile)
 | 
			
		||||
    service = wsdl.services[0]
 | 
			
		||||
    port = service.ports[0]
 | 
			
		||||
    wsdl_types = wsdl.collect_complextypes
 | 
			
		||||
    rpc_decode_typemap = wsdl_types + wsdl.soap_rpc_complextypes(port.find_binding)
 | 
			
		||||
    opt = {}
 | 
			
		||||
    opt[:default_encodingstyle] = ::SOAP::EncodingNamespace
 | 
			
		||||
    opt[:decode_typemap] = rpc_decode_typemap
 | 
			
		||||
    header, body = ::SOAP::Processor.unmarshal(@xml, opt)
 | 
			
		||||
    ary = ::SOAP::Mapping.soap2obj(body.response)
 | 
			
		||||
    assert_equal(3, ary.size)
 | 
			
		||||
    assert_equal("name1", ary[0].name)
 | 
			
		||||
    assert_equal("name2", ary[1].name)
 | 
			
		||||
    assert_equal("name3", ary[2].name)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -1,77 +1,31 @@
 | 
			
		|||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<definitions
 | 
			
		||||
    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
 | 
			
		||||
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
 | 
			
		||||
    xmlns:i1="http://www.winfessor.com/SoapBoxWebService/RosterDataSet.xsd"
 | 
			
		||||
    xmlns:s="http://www.w3.org/2001/XMLSchema"
 | 
			
		||||
    xmlns:s0="http://www.winfessor.com/SoapBoxWebService/SoapBoxWebService"
 | 
			
		||||
    xmlns:i2="http://www.winfessor.com/SoapBoxWebService/ExceptionDataSet.xsd"
 | 
			
		||||
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
 | 
			
		||||
    xmlns:i0="http://www.winfessor.com/SoapBoxWebService/MessageDataSet.xsd"
 | 
			
		||||
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
 | 
			
		||||
    targetNamespace="http://www.winfessor.com/SoapBoxWebService/SoapBoxWebService"
 | 
			
		||||
<definitions name = "emptycomplextype"
 | 
			
		||||
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 | 
			
		||||
    targetNamespace="urn:jp.gr.jin.rrr.example.emptycomplextype"
 | 
			
		||||
    xmlns="http://schemas.xmlsoap.org/wsdl/">
 | 
			
		||||
 | 
			
		||||
  <types>
 | 
			
		||||
    <s:schema
 | 
			
		||||
	elementFormDefault="qualified"
 | 
			
		||||
	targetNamespace="http://www.winfessor.com/SoapBoxWebService/SoapBoxWebService">
 | 
			
		||||
      <s:element name="typeIn">
 | 
			
		||||
        <s:complexType />
 | 
			
		||||
      </s:element>
 | 
			
		||||
    <xsd:schema elementFormDefault="qualified"
 | 
			
		||||
	targetNamespace="urn:jp.gr.jin.rrr.example.emptycomplextype">
 | 
			
		||||
      <xsd:element name="typeIn">
 | 
			
		||||
        <xsd:complexType />
 | 
			
		||||
      </xsd:element>
 | 
			
		||||
 | 
			
		||||
      <s:element name="typeOut">
 | 
			
		||||
        <s:complexType>
 | 
			
		||||
          <s:sequence>
 | 
			
		||||
            <s:element minOccurs="0" maxOccurs="1" name="str1" type="s:string" />
 | 
			
		||||
            <s:element minOccurs="0" maxOccurs="1" name="str2" type="s:string" />
 | 
			
		||||
            <s:element minOccurs="0" maxOccurs="1" name="seq">
 | 
			
		||||
              <s:complexType>
 | 
			
		||||
                <s:sequence>
 | 
			
		||||
                  <s:any />
 | 
			
		||||
                </s:sequence>
 | 
			
		||||
              </s:complexType>
 | 
			
		||||
            </s:element>
 | 
			
		||||
          </s:sequence>
 | 
			
		||||
        </s:complexType>
 | 
			
		||||
      </s:element>
 | 
			
		||||
    </s:schema>
 | 
			
		||||
      <xsd:element name="typeOut">
 | 
			
		||||
        <xsd:complexType>
 | 
			
		||||
          <xsd:sequence>
 | 
			
		||||
            <xsd:element minOccurs="0" maxOccurs="1" name="str1" type="xsd:string" />
 | 
			
		||||
            <xsd:element minOccurs="0" maxOccurs="1" name="str2" type="xsd:string" />
 | 
			
		||||
            <xsd:element minOccurs="0" maxOccurs="1" name="seq">
 | 
			
		||||
              <xsd:complexType>
 | 
			
		||||
                <xsd:sequence>
 | 
			
		||||
                  <xsd:any />
 | 
			
		||||
                </xsd:sequence>
 | 
			
		||||
              </xsd:complexType>
 | 
			
		||||
            </xsd:element>
 | 
			
		||||
          </xsd:sequence>
 | 
			
		||||
        </xsd:complexType>
 | 
			
		||||
      </xsd:element>
 | 
			
		||||
    </xsd:schema>
 | 
			
		||||
  </types>
 | 
			
		||||
 | 
			
		||||
  <message name="doIn">
 | 
			
		||||
    <part name="parameters" element="s0:typeIn" />
 | 
			
		||||
  </message>
 | 
			
		||||
  <message name="doOut">
 | 
			
		||||
    <part name="parameters" element="s0:typeOut" />
 | 
			
		||||
  </message>
 | 
			
		||||
 | 
			
		||||
  <portType name="DotNetPortType">
 | 
			
		||||
    <operation name="do">
 | 
			
		||||
      <input message="s0:doIn" />
 | 
			
		||||
      <output message="s0:doOut" />
 | 
			
		||||
    </operation>
 | 
			
		||||
  </portType>
 | 
			
		||||
 | 
			
		||||
  <binding name="DotNetBinding" type="s0:DotNetPortType">
 | 
			
		||||
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
 | 
			
		||||
    <operation name="do">
 | 
			
		||||
      <soap:operation soapAction="http://www.winfessor.com/SoapBoxWebService/SoapBoxWebService/SessionClose" style="document" />
 | 
			
		||||
      <input>
 | 
			
		||||
        <soap:body use="literal" />
 | 
			
		||||
	<soap:header message="s0:SessionCloseSoapBoxHeader" part="SoapBoxHeader" use="literal" />
 | 
			
		||||
      </input>
 | 
			
		||||
      <output>
 | 
			
		||||
        <soap:body use="literal" />
 | 
			
		||||
	<soap:header message="s0:SessionCloseSoapBoxHeader" part="SoapBoxHeader" use="literal" />
 | 
			
		||||
      </output>
 | 
			
		||||
    </operation>
 | 
			
		||||
  </binding>
 | 
			
		||||
 | 
			
		||||
  <service name="DotNetService">
 | 
			
		||||
    <documentation>doc doc doc.</documentation>
 | 
			
		||||
    <port name="DotNetPort" binding="s0:DotNetBinding">
 | 
			
		||||
      <soap:address location="http://localhost:8808" />
 | 
			
		||||
      <!-- <soap:address location="http://www.winfessor.com/SoapBoxWebservice/SoapBoxWebService.asmx" /> -->
 | 
			
		||||
    </port>
 | 
			
		||||
  </service>
 | 
			
		||||
</definitions>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										68
									
								
								test/wsdl/multiplefault.wsdl
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								test/wsdl/multiplefault.wsdl
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,68 @@
 | 
			
		|||
<?xml version="1.0"?>
 | 
			
		||||
<definitions name="MultipleFaultTest"
 | 
			
		||||
    targetNamespace="urn:jp.gr.jin.rrr.example.ele"
 | 
			
		||||
    xmlns:tns="urn:jp.gr.jin.rrr.example.ele"
 | 
			
		||||
    xmlns:typens="urn:jp.gr.jin.rrr.example.datatypes"
 | 
			
		||||
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
 | 
			
		||||
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
 | 
			
		||||
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
 | 
			
		||||
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
 | 
			
		||||
    xmlns="http://schemas.xmlsoap.org/wsdl/">
 | 
			
		||||
 | 
			
		||||
  <types>
 | 
			
		||||
    <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema"
 | 
			
		||||
	targetNamespace="urn:jp.gr.jin.rrr.example.datatypes">
 | 
			
		||||
      <xsd:complexType name="AuthenticationError">
 | 
			
		||||
	<all>
 | 
			
		||||
	  <element name="message" type="xsd:string" />
 | 
			
		||||
	  <element name="backtrace" type="xoapenc:Array" />
 | 
			
		||||
	</all>
 | 
			
		||||
      </xsd:complexType>
 | 
			
		||||
      <xsd:complexType name="AuthorizationError">
 | 
			
		||||
	<all>
 | 
			
		||||
	  <element name="message" type="xsd:string" />
 | 
			
		||||
	  <element name="backtrace" type="xoapenc:Array" />
 | 
			
		||||
	</all>
 | 
			
		||||
      </xsd:complexType>
 | 
			
		||||
    </xsd:schema>
 | 
			
		||||
  </types> 
 | 
			
		||||
 | 
			
		||||
  <message name="inputmsg"/>
 | 
			
		||||
  <message name="outputmsg"/>
 | 
			
		||||
  <message name="faultmsg1" >
 | 
			
		||||
    <part name="exception" type="typens:AuthenticationError" />
 | 
			
		||||
  </message>
 | 
			
		||||
  <message name="faultmsg2" >
 | 
			
		||||
    <part name="exception" type="typens:AuthorizationError" />
 | 
			
		||||
  </message>
 | 
			
		||||
 | 
			
		||||
  <portType name="MultipleFaultPortType">
 | 
			
		||||
    <operation name="myoperation">
 | 
			
		||||
      <input message="tns:inputmsg"/>
 | 
			
		||||
      <output message="tns:outputmsg"/>
 | 
			
		||||
      <fault message="tns:faultmsg1"/>
 | 
			
		||||
      <fault message="tns:faultmsg2"/>
 | 
			
		||||
    </operation>
 | 
			
		||||
  </portType>
 | 
			
		||||
 | 
			
		||||
  <binding name="MultipleFaultBinding" type="tns:MultipleFaultPortType">
 | 
			
		||||
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
 | 
			
		||||
    <operation name="myoperation">
 | 
			
		||||
      <soap:operation soapAction="urn:jp.gr.jin.rrr.example.ele"/>
 | 
			
		||||
      <input>
 | 
			
		||||
        <soap:body use="encoded" namespace="urn:jp.gr.jin.rrr.example.ele"
 | 
			
		||||
	    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
 | 
			
		||||
      </input>
 | 
			
		||||
      <output>
 | 
			
		||||
        <soap:body use="encoded" namespace="urn:jp.gr.jin.rrr.example.ele"
 | 
			
		||||
   	    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
 | 
			
		||||
      </output>
 | 
			
		||||
    </operation>
 | 
			
		||||
  </binding>
 | 
			
		||||
 | 
			
		||||
  <service name="MultipleFaultService">
 | 
			
		||||
    <port name="MultipleFaultPortType" binding="tns:MultipleFaultBinding">
 | 
			
		||||
      <soap:address location="http://localhost:17171/"/>
 | 
			
		||||
    </port>
 | 
			
		||||
  </service>
 | 
			
		||||
</definitions>
 | 
			
		||||
| 
						 | 
				
			
			@ -6,16 +6,16 @@ module WSDL
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
class TestWSDL < Test::Unit::TestCase
 | 
			
		||||
  def self.setup(filename)
 | 
			
		||||
    @@filename = filename
 | 
			
		||||
  def setup
 | 
			
		||||
    @file = File.join(File.dirname(__FILE__), 'emptycomplextype.wsdl')
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def test_wsdl
 | 
			
		||||
    @wsdl = WSDL::Parser.new.parse(File.open(@@filename).read)
 | 
			
		||||
    @wsdl = WSDL::Parser.new.parse(File.open(@file) { |f| f.read })
 | 
			
		||||
    assert_equal("#<WSDL::Definitions:{urn:jp.gr.jin.rrr.example.emptycomplextype}emptycomplextype>", @wsdl.inspect)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
TestWSDL.setup(File.join(File.dirname(__FILE__), 'emptycomplextype.wsdl'))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										39
									
								
								test/wsdl/test_multiplefault.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								test/wsdl/test_multiplefault.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,39 @@
 | 
			
		|||
require 'test/unit'
 | 
			
		||||
require 'wsdl/parser'
 | 
			
		||||
require 'wsdl/soap/classDefCreator'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
module WSDL
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class TestMultipleFault < Test::Unit::TestCase
 | 
			
		||||
  def self.setup(filename)
 | 
			
		||||
    @@filename = filename
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def test_multiplefault
 | 
			
		||||
    @wsdl = WSDL::Parser.new.parse(File.open(@@filename) { |f| f.read })
 | 
			
		||||
    classdefstr = WSDL::SOAP::ClassDefCreator.new(@wsdl).dump
 | 
			
		||||
    yield_eval_binding(classdefstr) do |b|
 | 
			
		||||
      assert_equal(
 | 
			
		||||
	WSDL::TestMultipleFault::AuthenticationError,
 | 
			
		||||
	eval("AuthenticationError", b)
 | 
			
		||||
      )
 | 
			
		||||
      assert_equal(
 | 
			
		||||
	WSDL::TestMultipleFault::AuthorizationError,
 | 
			
		||||
	eval("AuthorizationError", b)
 | 
			
		||||
      )
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def yield_eval_binding(evaled)
 | 
			
		||||
    b = binding
 | 
			
		||||
    eval(evaled, b)
 | 
			
		||||
    yield(b)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
TestMultipleFault.setup(File.join(File.dirname(__FILE__), 'multiplefault.wsdl'))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -6,16 +6,17 @@ module XSD
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
class TestXMLSchemaParser < Test::Unit::TestCase
 | 
			
		||||
  def self.setup(filename)
 | 
			
		||||
    @@filename = filename
 | 
			
		||||
  def setup
 | 
			
		||||
    @file = File.join(File.dirname(__FILE__), 'xmlschema.xml')
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def test_wsdl
 | 
			
		||||
    @wsdl = WSDL::XMLSchema::Parser.new.parse(File.open(@@filename).read)
 | 
			
		||||
    @wsdl = WSDL::XMLSchema::Parser.new.parse(File.open(@file) { |f| f.read })
 | 
			
		||||
    assert_equal(WSDL::XMLSchema::Schema, @wsdl.class)
 | 
			
		||||
    assert_equal(1, @wsdl.collect_elements.size)
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
TestXMLSchemaParser.setup(File.join(File.dirname(__FILE__), 'xmlschema.xml'))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,11 +1,8 @@
 | 
			
		|||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<xs:schema
 | 
			
		||||
    xmlns:mstns="http://www.winfessor.com/SoapBoxWebService/MessageDataSet.xsd"
 | 
			
		||||
    xmlns="http://www.winfessor.com/SoapBoxWebService/MessageDataSet.xsd"
 | 
			
		||||
    attributeFormDefault="qualified"
 | 
			
		||||
    elementFormDefault="qualified"
 | 
			
		||||
    targetNamespace="http://www.winfessor.com/SoapBoxWebService/MessageDataSet.xsd"
 | 
			
		||||
    id="MessageDataSet"
 | 
			
		||||
    targetNamespace="urn:jp.gr.jin.rrr.example.fakeschema"
 | 
			
		||||
    xmlns:xs="http://www.w3.org/2001/XMLSchema">
 | 
			
		||||
  <xs:element name="MessageDataSet">
 | 
			
		||||
    <xs:complexType>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue