2003-09-24 11:18:44 -04:00
|
|
|
#!/usr/bin/env ruby
|
|
|
|
|
|
|
|
# This file is a sample based on GoogleSearchClient.rb, which can be
|
|
|
|
# generated by WSDL file and wsdl2ruby.rb.
|
|
|
|
#
|
|
|
|
# $ wsdl2ruby.rb --type client --force \
|
|
|
|
# --wsdl http://api.google.com/GoogleSearch.wsdl
|
|
|
|
#
|
|
|
|
# See wsdlDriver.rb to use WSDL file directly (slow).
|
|
|
|
require 'GoogleSearchDriver.rb'
|
|
|
|
|
|
|
|
endpoint_url = ARGV.shift
|
|
|
|
obj = GoogleSearchPort.new(endpoint_url)
|
|
|
|
|
|
|
|
# Uncomment the below line to see SOAP wiredumps.
|
|
|
|
# obj.wiredump_dev = STDERR
|
|
|
|
|
|
|
|
# SYNOPSIS
|
|
|
|
# doGoogleSearch(key, q, start, maxResults, filter, restrict, safeSearch, lr, ie, oe)
|
|
|
|
#
|
|
|
|
# ARGS
|
|
|
|
# key - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
# q - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
# start - {http://www.w3.org/2001/XMLSchema}int
|
|
|
|
# maxResults - {http://www.w3.org/2001/XMLSchema}int
|
|
|
|
# filter - {http://www.w3.org/2001/XMLSchema}boolean
|
|
|
|
# restrict - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
# safeSearch - {http://www.w3.org/2001/XMLSchema}boolean
|
|
|
|
# lr - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
# ie - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
# oe - {http://www.w3.org/2001/XMLSchema}string
|
|
|
|
#
|
|
|
|
# RETURNS
|
|
|
|
# return GoogleSearchResult - {urn:GoogleSearch}GoogleSearchResult
|
|
|
|
#
|
|
|
|
# RAISES
|
|
|
|
# N/A
|
|
|
|
#
|
|
|
|
key = q = start = maxResults = filter = restrict = safeSearch = lr = ie = oe = nil
|
* 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
2003-11-25 02:31:33 -05:00
|
|
|
key = File.open(File.expand_path("~/.google_key")) { |f| f.read }.chomp
|
2003-09-24 11:18:44 -04:00
|
|
|
q = "Ruby"
|
|
|
|
start = 0
|
|
|
|
maxResults = 10
|
|
|
|
filter = false
|
|
|
|
restrict = ""
|
|
|
|
safeSearch = false
|
|
|
|
lr = ""
|
|
|
|
ie = "utf-8"
|
|
|
|
oe = "utf-8"
|
|
|
|
result = obj.doGoogleSearch(key, q, start, maxResults, filter, restrict, safeSearch, lr, ie, oe)
|
|
|
|
|
|
|
|
result.resultElements.each do |ele|
|
|
|
|
puts "== #{ele.title}: #{ele.URL}"
|
|
|
|
puts ele.snippet
|
|
|
|
puts
|
|
|
|
end
|