aboutsummaryrefslogtreecommitdiffstats
path: root/sample/wsdl/amazon/wsdlDriver.rb
diff options
context:
space:
mode:
authornahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-05-22 13:03:38 +0000
committernahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-05-22 13:03:38 +0000
commiteb3f829be932514064a983eb98fa7f840137f985 (patch)
treec17440206af25b52f47b1c391f818e126a994d0a /sample/wsdl/amazon/wsdlDriver.rb
parent7aea792d3bdf42c349170e710953d7de29de57ab (diff)
downloadruby-eb3f829be932514064a983eb98fa7f840137f985.tar.gz
* lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
== SOAP client and server == === for both client side and server side === * improved document/literal service support. style(rpc,document)/use(encoding, literal) combination are all supported. for the detail about combination, see test/soap/test_style.rb. * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to WSDL as well as obj2soap. closes #70. * let SOAP::Mapping::Object handle XML attribute for doc/lit service. you can set/get XML attribute via accessor methods which as a name 'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name). === client side === * WSDLDriver capitalized name operation bug fixed. from 1.5.3-ruby1.8.2, operation which has capitalized name (such as KeywordSearchRequest in AWS) is defined as a method having uncapitalized name. (converted with GenSupport.safemethodname to handle operation name 'foo-bar'). it introduced serious incompatibility; in the past, it was defined as a capitalized. define capitalized method as well under that circumstance. * added new factory interface 'WSDLDriverFactory#create_rpc_driver' to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver are merged). 'WSDLDriverFactory#create_driver' still creates WSDLDriver for compatibility but it warns that the method is deprecated. please use create_rpc_driver instead of create_driver. * allow to use an URI object as an endpoint_url even with net/http, not http-access2. === server side === * added mod_ruby support to SOAP::CGIStub. rename a CGI script server.cgi to server.rb and let mod_ruby's RubyHandler handles the script. CGIStub detects if it's running under mod_ruby environment or not. * added fcgi support to SOAP::CGIStub. see the sample at sample/soap/calc/server.fcgi. (almost same as server.cgi but has fcgi handler at the bottom.) * allow to return a SOAPFault object to respond customized SOAP fault. * added the interface 'generate_explicit_type' for server side (CGIStub, HTTPServer). call 'self.generate_explicit_type = true' if you want to return simplified XML even if it's rpc/encoded service. == WSDL == === WSDL definition === * improved XML Schema support such as extension, restriction, simpleType, complexType + simpleContent, ref, length, import, include. * reduced "unknown element/attribute" warnings (warn only 1 time for each QName). * importing XSD file at schemaLocation with xsd:import. === code generation from WSDL === * generator crashed when there's '-' in defined element/attribute name. * added ApacheMap WSDL definition. * sample/{soap,wsdl}: removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'sample/wsdl/amazon/wsdlDriver.rb')
-rw-r--r--sample/wsdl/amazon/wsdlDriver.rb52
1 files changed, 0 insertions, 52 deletions
diff --git a/sample/wsdl/amazon/wsdlDriver.rb b/sample/wsdl/amazon/wsdlDriver.rb
deleted file mode 100644
index e62a9a65b3..0000000000
--- a/sample/wsdl/amazon/wsdlDriver.rb
+++ /dev/null
@@ -1,52 +0,0 @@
-require 'soap/wsdlDriver'
-
-book = ARGV.shift || "Ruby"
-
-# AmazonSearch.rb is generated from WSDL.
-# Run "wsdl2ruby.rb --wsdl http://soap.amazon.com/schemas3/AmazonWebServices.wsdl --classdef --force"
-# http://soap.amazon.com/schemas3/AmazonWebServices.wsdl
-require 'AmazonSearch.rb'
-
-=begin
-Or, define the class by yourself like this.
-
-class KeywordRequest
- def initialize(keyword = nil,
- page = nil,
- mode = nil,
- tag = nil,
- type = nil,
- devtag = nil,
- sort = nil)
- @keyword = keyword
- @page = page
- @mode = mode
- @tag = tag
- @type = type
- @devtag = devtag
- @sort = sort
- end
-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")) { |f| f.read }.chomp
-devtag = nil
-
-# v2: AMAZON_WSDL = 'http://soap.amazon.com/schemas2/AmazonWebServices.wsdl'
-AMAZON_WSDL = 'http://soap.amazon.com/schemas3/AmazonWebServices.wsdl'
-amazon = SOAP::WSDLDriverFactory.new(AMAZON_WSDL).create_driver
-p "WSDL loaded"
-amazon.generate_explicit_type = true
-amazon.mandatorycharset = 'utf-8' # AWS should fix this bug.
-#amazon.wiredump_dev = STDERR
-
-# Show sales rank.
-req = KeywordRequest.new(book, "1", "books", "webservices-20", "lite", devtag, "+salesrank")
-amazon.KeywordSearchRequest(req).Details.each do |detail|
- puts "== #{detail.ProductName}"
- puts "Author: #{detail.Authors.join(", ")}"
- puts "Release date: #{detail.ReleaseDate}"
- puts "List price: #{detail.ListPrice}, our price: #{detail.OurPrice}"
- puts
-end