require 'google/api_client' CACHE_PREFIX = "http://www.gmodules.com/gadgets/proxy/container=default&debug=0&nocache=0/" namespace :wiki do desc 'Autogenerate wiki pages' task :generate do output = <<-WIKI #summary The list of supported APIs The Google API Client for Ruby is a small flexible client library for accessing the following Google APIs. WIKI preferred_apis = {} client = Google::APIClient.new for api in client.discovered_apis if !preferred_apis.has_key?(api.name) preferred_apis[api.name] = api elsif api.preferred preferred_apis[api.name] = api end end for api_name, api in preferred_apis output += ( "||#{CACHE_PREFIX}#{api['icons']['x16']}||" + "[#{api.documentation} #{api.title}]||" + "#{api.description}||\n" ) end wiki_path = File.expand_path( File.join(File.dirname(__FILE__), '../wiki/')) Dir.mkdir(wiki_path) if !File.exist?(wiki_path) File.open(File.join(wiki_path, 'SupportedAPIs.wiki'), 'w') do |file| file.write(output) end end end # task 'clobber' => ['wiki:clobber_wiki']