diff options
Diffstat (limited to 'sample/soap/raa2.4/sample.rb')
-rw-r--r-- | sample/soap/raa2.4/sample.rb | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/sample/soap/raa2.4/sample.rb b/sample/soap/raa2.4/sample.rb new file mode 100644 index 0000000000..e157f8361f --- /dev/null +++ b/sample/soap/raa2.4/sample.rb @@ -0,0 +1,115 @@ +#!/usr/bin/env ruby + +# This is a sample client based on raaServiceClient.rb. +# You can generate raaServiceClient.rb and related files with +# wsdl2ruby.rb --wsdl http://www.ruby-lang.org/xmlns/soap/interface/RAA/0.0.4/ --type client + +require 'pp' +require 'raaDriver.rb' + +raa = RaaServicePortType.new +# raa.wiredump_dev = STDERR + +def sec(msg) + puts + puts "--------" + puts "-- " + msg + puts +end + +def subsec(msg) + puts "-- " + msg +end + +sec("retrieve a gem (RAA Information) which has specified name") +name = 'soap4r' +pp raa.gem(name) + +sec("retrieve dependents of the project") +name = 'http-access2'; version = nil +pp raa.dependents(name, version) + +sec("number of registered gems") +puts raa.size + +sec("retrieve all registered gem names") +p raa.names + +sec("retrieve gems of specified category") +major = 'Library'; minor = 'XML' +p raa.list_by_category(major, minor) + +sec("retrieve category tree") +pp raa.tree_by_category + +sec("retrieve gems which is updated recently") +idx = 0 +p raa.list_recent_updated(idx) +subsec("next 10 gems") +idx += 1 +p raa.list_recent_updated(idx) +subsec("next 10 gems") +idx += 1 +p raa.list_recent_updated(idx) + +sec("retrieve gems which is created recently") +p raa.list_recent_created(idx) + +sec("retrieve gems which is updated in 7 days") +date = Time.now - 7 * 24 * 60 * 60; idx = 0 +p raa.list_updated_since(date, idx) + +sec("retrieve gems which is created in 7 days") +p raa.list_created_since(date, idx) + +sec("retrieve gems of specified owner") +owner_id = 8 # NaHi +p raa.list_by_owner(owner_id) + +sec("search gems with keyword") +substring = 'soap' +pp raa.search(substring) + +# There are several search interface to search a field explicitly. +# puts raa.search_name(substring, idx) +# puts raa.search_short_description(substring, idx) +# puts raa.search_owner(substring, idx) +# puts raa.search_version(substring, idx) +# puts raa.search_status(substring, idx) +# puts raa.search_description(substring, idx) + +sec("retrieve owner info") +owner_id = 8 +pp raa.owner(owner_id) + +sec("retrieve owners") +idx = 0 +p raa.list_owner(idx) + +sec("update 'sampleproject'") +name = 'sampleproject' +pass = 'sampleproject' +gem = raa.gem(name) +p gem.project.version +gem.project.version.succ! +gem.updated = Time.now +raa.update(name, pass, gem) +p raa.gem(name).project.version + +sec("update pass phrase") +raa.update_pass(name, 'sampleproject', 'foo') +subsec("update check") +gem = raa.gem(name) +gem.project.description = 'Current pass phrase is "foo"' +gem.updated = Time.now +raa.update(name, 'foo', gem) +# +subsec("recover pass phrase") +raa.update_pass(name, 'foo', 'sampleproject') +subsec("update check") +gem = raa.gem(name) +gem.project.description = 'Current pass phrase is "sampleproject"' +gem.updated = Time.now +raa.update(name, 'sampleproject', gem) + +sec("done") |