diff options
Diffstat (limited to 'actionwebservice/examples')
13 files changed, 0 insertions, 715 deletions
diff --git a/actionwebservice/examples/googlesearch/README b/actionwebservice/examples/googlesearch/README deleted file mode 100644 index 25ccbd2382..0000000000 --- a/actionwebservice/examples/googlesearch/README +++ /dev/null @@ -1,143 +0,0 @@ -= Google Service example - -This example shows how one would implement an API like Google -Search that uses lots of structured types. - -There are examples for "Direct" and "Delegated" dispatching -modes. - -There is also an example for API definition file autoloading. - - -= Running the examples - - 1. Add the files to an Action Web Service enabled Rails project. - - "Direct" example: - - * Copy direct/search_controller.rb to "app/controllers" - in a Rails project. - * Copy direct/google_search_api.rb to "app/apis" - in a Rails project - - "Delegated" example: - - * Copy delegated/search_controller.rb to "app/controllers" - in a Rails project. - * Copy delegated/google_search_service.rb to "lib" - in a Rails project. - - "Autoloading" example: - - * Copy autoloading/google_search_api.rb to "app/apis" (create the directory - if it doesn't exist) in a Rails project. - - * Copy autoloading/google_search_controller.rb "app/controllers" - in a Rails project. - - - 2. Go to the WSDL url in a browser, and check that it looks correct. - - "Direct" and "Delegated" examples: - http://url_to_project/search/wsdl - - "Autoloading" example: - http://url_to_project/google_search/wsdl - - You can compare it to Google's hand-coded WSDL at http://api.google.com/GoogleSearch.wsdl - and see how close (or not) the generated version is. - - Note that I used GoogleSearch as the canonical "best practice" - interoperable example when implementing WSDL/SOAP support, which might - explain extreme similarities :) - - - 3. Test that it works with .NET (Mono in this example): - - $ wget WSDL_URL - $ mv wsdl GoogleSearch.wsdl - $ wsdl -out:GoogleSearch.cs GoogleSearch.wsdl - - Add these lines to the GoogleSearchService class body (be mindful of the - wrapping): - - public static void Main(string[] args) - { - GoogleSearchResult result; - GoogleSearchService service; - - service = new GoogleSearchService(); - result = service.doGoogleSearch("myApiKey", "my query", 10, 30, true, "restrict", false, "lr", "ie", "oe"); - System.Console.WriteLine("documentFiltering: {0}", result.documentFiltering); - System.Console.WriteLine("searchComments: {0}", result.searchComments); - System.Console.WriteLine("estimatedTotalResultsCount: {0}", result.estimatedTotalResultsCount); - System.Console.WriteLine("estimateIsExact: {0}", result.estimateIsExact); - System.Console.WriteLine("resultElements:"); - foreach (ResultElement element in result.resultElements) { - System.Console.WriteLine("\tsummary: {0}", element.summary); - System.Console.WriteLine("\tURL: {0}", element.URL); - System.Console.WriteLine("\tsnippet: {0}", element.snippet); - System.Console.WriteLine("\ttitle: {0}", element.title); - System.Console.WriteLine("\tcachedSize: {0}", element.cachedSize); - System.Console.WriteLine("\trelatedInformationPresent: {0}", element.relatedInformationPresent); - System.Console.WriteLine("\thostName: {0}", element.hostName); - System.Console.WriteLine("\tdirectoryCategory: {0}", element.directoryCategory.fullViewableName); - System.Console.WriteLine("\tdirectoryTitle: {0}", element.directoryTitle); - } - System.Console.WriteLine("searchQuery: {0}", result.searchQuery); - System.Console.WriteLine("startIndex: {0}", result.startIndex); - System.Console.WriteLine("endIndex: {0}", result.endIndex); - System.Console.WriteLine("searchTips: {0}", result.searchTips); - System.Console.WriteLine("directoryCategories:"); - foreach (DirectoryCategory cat in result.directoryCategories) { - System.Console.WriteLine("\t{0} ({1})", cat.fullViewableName, cat.specialEncoding); - } - System.Console.WriteLine("searchTime: {0}", result.searchTime); - } - - Now compile and run: - - $ mcs -reference:System.Web.Services GoogleSearch.cs - $ mono GoogleSearch.exe - - - If you had the application running (on the same host you got - the WSDL from), you should see something like this: - - - documentFiltering: True - searchComments: - estimatedTotalResultsCount: 322000 - estimateIsExact: False - resultElements: - summary: ONlamp.com: Rolling with Ruby on Rails - URL: http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html - snippet: Curt Hibbs shows off Ruby on Rails by building a simple ... - title: Teh Railz0r - cachedSize: Almost no lines of code! - relatedInformationPresent: True - hostName: rubyonrails.com - directoryCategory: Web Development - directoryTitle: - searchQuery: http://www.google.com/search?q=ruby+on+rails - startIndex: 10 - endIndex: 40 - searchTips: "on" is a very common word and was not included in your search [details] - directoryCategories: - Web Development (UTF-8) - Programming (US-ASCII) - searchTime: 1E-06 - - - Also, if an API method throws an exception, it will be sent back to the - caller in the protocol's exception format, so they should get an exception - thrown on their side with a meaningful error message. - - If you don't like this behaviour, you can do: - - class MyController < ActionController::Base - web_service_exception_reporting false - end - - 4. Crack open a beer. Publishing APIs for working with the same model as - your Rails web app should be easy from now on :) diff --git a/actionwebservice/examples/googlesearch/autoloading/google_search_api.rb b/actionwebservice/examples/googlesearch/autoloading/google_search_api.rb deleted file mode 100644 index ed69fed7bc..0000000000 --- a/actionwebservice/examples/googlesearch/autoloading/google_search_api.rb +++ /dev/null @@ -1,50 +0,0 @@ -class DirectoryCategory < ActionWebService::Struct - member :fullViewableName, :string - member :specialEncoding, :string -end - -class ResultElement < ActionWebService::Struct - member :summary, :string - member :URL, :string - member :snippet, :string - member :title, :string - member :cachedSize, :string - member :relatedInformationPresent, :bool - member :hostName, :string - member :directoryCategory, DirectoryCategory - member :directoryTitle, :string -end - -class GoogleSearchResult < ActionWebService::Struct - member :documentFiltering, :bool - member :searchComments, :string - member :estimatedTotalResultsCount, :int - member :estimateIsExact, :bool - member :resultElements, [ResultElement] - member :searchQuery, :string - member :startIndex, :int - member :endIndex, :int - member :searchTips, :string - member :directoryCategories, [DirectoryCategory] - member :searchTime, :float -end - -class GoogleSearchAPI < ActionWebService::API::Base - inflect_names false - - api_method :doGetCachedPage, :returns => [:string], :expects => [{:key=>:string}, {:url=>:string}] - api_method :doGetSpellingSuggestion, :returns => [:string], :expects => [{:key=>:string}, {:phrase=>:string}] - - api_method :doGoogleSearch, :returns => [GoogleSearchResult], :expects => [ - {:key=>:string}, - {:q=>:string}, - {:start=>:int}, - {:maxResults=>:int}, - {:filter=>:bool}, - {:restrict=>:string}, - {:safeSearch=>:bool}, - {:lr=>:string}, - {:ie=>:string}, - {:oe=>:string} - ] -end diff --git a/actionwebservice/examples/googlesearch/autoloading/google_search_controller.rb b/actionwebservice/examples/googlesearch/autoloading/google_search_controller.rb deleted file mode 100644 index c62e869df5..0000000000 --- a/actionwebservice/examples/googlesearch/autoloading/google_search_controller.rb +++ /dev/null @@ -1,57 +0,0 @@ -class GoogleSearchController < ApplicationController - wsdl_service_name 'GoogleSearch' - - def doGetCachedPage - "<html><body>i am a cached page. my key was %s, url was %s</body></html>" % [@params['key'], @params['url']] - end - - def doSpellingSuggestion - "%s: Did you mean '%s'?" % [@params['key'], @params['phrase']] - end - - def doGoogleSearch - resultElement = ResultElement.new - resultElement.summary = "ONlamp.com: Rolling with Ruby on Rails" - resultElement.URL = "http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html" - resultElement.snippet = "Curt Hibbs shows off Ruby on Rails by building a simple application that requires " + - "almost no Ruby experience. ... Rolling with Ruby on Rails. ..." - resultElement.title = "Teh Railz0r" - resultElement.cachedSize = "Almost no lines of code!" - resultElement.relatedInformationPresent = true - resultElement.hostName = "rubyonrails.com" - resultElement.directoryCategory = category("Web Development", "UTF-8") - - result = GoogleSearchResult.new - result.documentFiltering = @params['filter'] - result.searchComments = "" - result.estimatedTotalResultsCount = 322000 - result.estimateIsExact = false - result.resultElements = [resultElement] - result.searchQuery = "http://www.google.com/search?q=ruby+on+rails" - result.startIndex = @params['start'] - result.endIndex = @params['start'] + @params['maxResults'] - result.searchTips = "\"on\" is a very common word and was not included in your search [details]" - result.searchTime = 0.000001 - - # For Mono, we have to clone objects if they're referenced by more than one place, otherwise - # the Ruby SOAP collapses them into one instance and uses references all over the - # place, confusing Mono. - # - # This has recently been fixed: - # http://bugzilla.ximian.com/show_bug.cgi?id=72265 - result.directoryCategories = [ - category("Web Development", "UTF-8"), - category("Programming", "US-ASCII"), - ] - - result - end - - private - def category(name, encoding) - cat = DirectoryCategory.new - cat.fullViewableName = name.dup - cat.specialEncoding = encoding.dup - cat - end -end diff --git a/actionwebservice/examples/googlesearch/delegated/google_search_service.rb b/actionwebservice/examples/googlesearch/delegated/google_search_service.rb deleted file mode 100644 index ade354d89d..0000000000 --- a/actionwebservice/examples/googlesearch/delegated/google_search_service.rb +++ /dev/null @@ -1,108 +0,0 @@ -class DirectoryCategory < ActionWebService::Struct - member :fullViewableName, :string - member :specialEncoding, :string -end - -class ResultElement < ActionWebService::Struct - member :summary, :string - member :URL, :string - member :snippet, :string - member :title, :string - member :cachedSize, :string - member :relatedInformationPresent, :bool - member :hostName, :string - member :directoryCategory, DirectoryCategory - member :directoryTitle, :string -end - -class GoogleSearchResult < ActionWebService::Struct - member :documentFiltering, :bool - member :searchComments, :string - member :estimatedTotalResultsCount, :int - member :estimateIsExact, :bool - member :resultElements, [ResultElement] - member :searchQuery, :string - member :startIndex, :int - member :endIndex, :int - member :searchTips, :string - member :directoryCategories, [DirectoryCategory] - member :searchTime, :float -end - -class GoogleSearchAPI < ActionWebService::API::Base - inflect_names false - - api_method :doGetCachedPage, :returns => [:string], :expects => [{:key=>:string}, {:url=>:string}] - api_method :doGetSpellingSuggestion, :returns => [:string], :expects => [{:key=>:string}, {:phrase=>:string}] - - api_method :doGoogleSearch, :returns => [GoogleSearchResult], :expects => [ - {:key=>:string}, - {:q=>:string}, - {:start=>:int}, - {:maxResults=>:int}, - {:filter=>:bool}, - {:restrict=>:string}, - {:safeSearch=>:bool}, - {:lr=>:string}, - {:ie=>:string}, - {:oe=>:string} - ] -end - -class GoogleSearchService < ActionWebService::Base - web_service_api GoogleSearchAPI - - def doGetCachedPage(key, url) - "<html><body>i am a cached page</body></html>" - end - - def doSpellingSuggestion(key, phrase) - "Did you mean 'teh'?" - end - - def doGoogleSearch(key, q, start, maxResults, filter, restrict, safeSearch, lr, ie, oe) - resultElement = ResultElement.new - resultElement.summary = "ONlamp.com: Rolling with Ruby on Rails" - resultElement.URL = "http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html" - resultElement.snippet = "Curt Hibbs shows off Ruby on Rails by building a simple application that requires " + - "almost no Ruby experience. ... Rolling with Ruby on Rails. ..." - resultElement.title = "Teh Railz0r" - resultElement.cachedSize = "Almost no lines of code!" - resultElement.relatedInformationPresent = true - resultElement.hostName = "rubyonrails.com" - resultElement.directoryCategory = category("Web Development", "UTF-8") - - result = GoogleSearchResult.new - result.documentFiltering = filter - result.searchComments = "" - result.estimatedTotalResultsCount = 322000 - result.estimateIsExact = false - result.resultElements = [resultElement] - result.searchQuery = "http://www.google.com/search?q=ruby+on+rails" - result.startIndex = start - result.endIndex = start + maxResults - result.searchTips = "\"on\" is a very common word and was not included in your search [details]" - result.searchTime = 0.000001 - - # For Mono, we have to clone objects if they're referenced by more than one place, otherwise - # the Ruby SOAP collapses them into one instance and uses references all over the - # place, confusing Mono. - # - # This has recently been fixed: - # http://bugzilla.ximian.com/show_bug.cgi?id=72265 - result.directoryCategories = [ - category("Web Development", "UTF-8"), - category("Programming", "US-ASCII"), - ] - - result - end - - private - def category(name, encoding) - cat = DirectoryCategory.new - cat.fullViewableName = name.dup - cat.specialEncoding = encoding.dup - cat - end -end diff --git a/actionwebservice/examples/googlesearch/delegated/search_controller.rb b/actionwebservice/examples/googlesearch/delegated/search_controller.rb deleted file mode 100644 index 6525921b5a..0000000000 --- a/actionwebservice/examples/googlesearch/delegated/search_controller.rb +++ /dev/null @@ -1,7 +0,0 @@ -require 'google_search_service' - -class SearchController < ApplicationController - wsdl_service_name 'GoogleSearch' - web_service_dispatching_mode :delegated - web_service :beta3, GoogleSearchService.new -end diff --git a/actionwebservice/examples/googlesearch/direct/google_search_api.rb b/actionwebservice/examples/googlesearch/direct/google_search_api.rb deleted file mode 100644 index ed69fed7bc..0000000000 --- a/actionwebservice/examples/googlesearch/direct/google_search_api.rb +++ /dev/null @@ -1,50 +0,0 @@ -class DirectoryCategory < ActionWebService::Struct - member :fullViewableName, :string - member :specialEncoding, :string -end - -class ResultElement < ActionWebService::Struct - member :summary, :string - member :URL, :string - member :snippet, :string - member :title, :string - member :cachedSize, :string - member :relatedInformationPresent, :bool - member :hostName, :string - member :directoryCategory, DirectoryCategory - member :directoryTitle, :string -end - -class GoogleSearchResult < ActionWebService::Struct - member :documentFiltering, :bool - member :searchComments, :string - member :estimatedTotalResultsCount, :int - member :estimateIsExact, :bool - member :resultElements, [ResultElement] - member :searchQuery, :string - member :startIndex, :int - member :endIndex, :int - member :searchTips, :string - member :directoryCategories, [DirectoryCategory] - member :searchTime, :float -end - -class GoogleSearchAPI < ActionWebService::API::Base - inflect_names false - - api_method :doGetCachedPage, :returns => [:string], :expects => [{:key=>:string}, {:url=>:string}] - api_method :doGetSpellingSuggestion, :returns => [:string], :expects => [{:key=>:string}, {:phrase=>:string}] - - api_method :doGoogleSearch, :returns => [GoogleSearchResult], :expects => [ - {:key=>:string}, - {:q=>:string}, - {:start=>:int}, - {:maxResults=>:int}, - {:filter=>:bool}, - {:restrict=>:string}, - {:safeSearch=>:bool}, - {:lr=>:string}, - {:ie=>:string}, - {:oe=>:string} - ] -end diff --git a/actionwebservice/examples/googlesearch/direct/search_controller.rb b/actionwebservice/examples/googlesearch/direct/search_controller.rb deleted file mode 100644 index 7c69f0225e..0000000000 --- a/actionwebservice/examples/googlesearch/direct/search_controller.rb +++ /dev/null @@ -1,58 +0,0 @@ -class SearchController < ApplicationController - web_service_api :google_search - wsdl_service_name 'GoogleSearch' - - def doGetCachedPage - "<html><body>i am a cached page. my key was %s, url was %s</body></html>" % [@params['key'], @params['url']] - end - - def doSpellingSuggestion - "%s: Did you mean '%s'?" % [@params['key'], @params['phrase']] - end - - def doGoogleSearch - resultElement = ResultElement.new - resultElement.summary = "ONlamp.com: Rolling with Ruby on Rails" - resultElement.URL = "http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html" - resultElement.snippet = "Curt Hibbs shows off Ruby on Rails by building a simple application that requires " + - "almost no Ruby experience. ... Rolling with Ruby on Rails. ..." - resultElement.title = "Teh Railz0r" - resultElement.cachedSize = "Almost no lines of code!" - resultElement.relatedInformationPresent = true - resultElement.hostName = "rubyonrails.com" - resultElement.directoryCategory = category("Web Development", "UTF-8") - - result = GoogleSearchResult.new - result.documentFiltering = @params['filter'] - result.searchComments = "" - result.estimatedTotalResultsCount = 322000 - result.estimateIsExact = false - result.resultElements = [resultElement] - result.searchQuery = "http://www.google.com/search?q=ruby+on+rails" - result.startIndex = @params['start'] - result.endIndex = @params['start'] + @params['maxResults'] - result.searchTips = "\"on\" is a very common word and was not included in your search [details]" - result.searchTime = 0.000001 - - # For Mono, we have to clone objects if they're referenced by more than one place, otherwise - # the Ruby SOAP collapses them into one instance and uses references all over the - # place, confusing Mono. - # - # This has recently been fixed: - # http://bugzilla.ximian.com/show_bug.cgi?id=72265 - result.directoryCategories = [ - category("Web Development", "UTF-8"), - category("Programming", "US-ASCII"), - ] - - result - end - - private - def category(name, encoding) - cat = DirectoryCategory.new - cat.fullViewableName = name.dup - cat.specialEncoding = encoding.dup - cat - end -end diff --git a/actionwebservice/examples/metaWeblog/README b/actionwebservice/examples/metaWeblog/README deleted file mode 100644 index f66f56770b..0000000000 --- a/actionwebservice/examples/metaWeblog/README +++ /dev/null @@ -1,17 +0,0 @@ -= metaWeblog example - -This example shows how one might begin to go about adding metaWeblog -(http://www.xmlrpc.com/metaWeblogApi) API support to a Rails-based -blogging application. - -The example APIs are more verbose than you may want to make them, for documentation -reasons. - -= Running - - 1. Copy the "apis" directory and its files into "app" in a Rails project. - - 2. Copy the "controllers" directory and its files into "app" in a Rails project - - 3. Fire up a desktop blogging application (such as w.bloggar, MarsEdit, or BloGTK), - point it at http://localhost:3000/xmlrpc/api, and try creating or editing blog posts. diff --git a/actionwebservice/examples/metaWeblog/apis/blogger_api.rb b/actionwebservice/examples/metaWeblog/apis/blogger_api.rb deleted file mode 100644 index 9f85a2391e..0000000000 --- a/actionwebservice/examples/metaWeblog/apis/blogger_api.rb +++ /dev/null @@ -1,60 +0,0 @@ -# -# see the blogger API spec at http://www.blogger.com/developers/api/1_docs/ -# note that the method signatures are subtly different to metaWeblog, they -# are not identical. take care to ensure you handle the different semantics -# properly if you want to support blogger API too, to get maximum compatibility. -# - -module Blog - class Blog < ActionWebService::Struct - member :url, :string - member :blogid, :string - member :blogName, :string - end - - class User < ActionWebService::Struct - member :nickname, :string - member :userid, :string - member :url, :string - member :email, :string - member :lastname, :string - member :firstname, :string - end -end - -# -# blogger -# -class BloggerAPI < ActionWebService::API::Base - inflect_names false - - api_method :newPost, :returns => [:string], :expects => [ - {:appkey=>:string}, - {:blogid=>:string}, - {:username=>:string}, - {:password=>:string}, - {:content=>:string}, - {:publish=>:bool} - ] - - api_method :editPost, :returns => [:bool], :expects => [ - {:appkey=>:string}, - {:postid=>:string}, - {:username=>:string}, - {:password=>:string}, - {:content=>:string}, - {:publish=>:bool} - ] - - api_method :getUsersBlogs, :returns => [[Blog::Blog]], :expects => [ - {:appkey=>:string}, - {:username=>:string}, - {:password=>:string} - ] - - api_method :getUserInfo, :returns => [Blog::User], :expects => [ - {:appkey=>:string}, - {:username=>:string}, - {:password=>:string} - ] -end diff --git a/actionwebservice/examples/metaWeblog/apis/blogger_service.rb b/actionwebservice/examples/metaWeblog/apis/blogger_service.rb deleted file mode 100644 index b79b53e6f7..0000000000 --- a/actionwebservice/examples/metaWeblog/apis/blogger_service.rb +++ /dev/null @@ -1,34 +0,0 @@ -require 'blogger_api' - -class BloggerService < ActionWebService::Base - web_service_api BloggerAPI - - def initialize - @postid = 0 - end - - def newPost(key, id, user, pw, content, publish) - $stderr.puts "id=#{id} user=#{user} pw=#{pw}, content=#{content.inspect} [#{publish}]" - (@postid += 1).to_s - end - - def editPost(key, post_id, user, pw, content, publish) - $stderr.puts "id=#{post_id} user=#{user} pw=#{pw} content=#{content.inspect} [#{publish}]" - true - end - - def getUsersBlogs(key, user, pw) - $stderr.puts "getting blogs for #{user}" - blog = Blog::Blog.new( - :url =>'http://blog', - :blogid => 'myblog', - :blogName => 'My Blog' - ) - [blog] - end - - def getUserInfo(key, user, pw) - $stderr.puts "getting user info for #{user}" - Blog::User.new(:nickname => 'user', :email => 'user@test.com') - end -end diff --git a/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb b/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb deleted file mode 100644 index adef12a20f..0000000000 --- a/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb +++ /dev/null @@ -1,67 +0,0 @@ -# -# here lie structures, cousins of those on http://www.xmlrpc.com/metaWeblog -# but they don't necessarily the real world reflect -# so if you do, find that your client complains: -# please tell, of problems you suffered through -# - -module Blog - class Post < ActionWebService::Struct - member :title, :string - member :link, :string - member :description, :string - member :author, :string - member :category, :string - member :comments, :string - member :guid, :string - member :pubDate, :string - end - - class Category < ActionWebService::Struct - member :description, :string - member :htmlUrl, :string - member :rssUrl, :string - end -end - -# -# metaWeblog -# -class MetaWeblogAPI < ActionWebService::API::Base - inflect_names false - - api_method :newPost, :returns => [:string], :expects => [ - {:blogid=>:string}, - {:username=>:string}, - {:password=>:string}, - {:struct=>Blog::Post}, - {:publish=>:bool} - ] - - api_method :editPost, :returns => [:bool], :expects => [ - {:postid=>:string}, - {:username=>:string}, - {:password=>:string}, - {:struct=>Blog::Post}, - {:publish=>:bool}, - ] - - api_method :getPost, :returns => [Blog::Post], :expects => [ - {:postid=>:string}, - {:username=>:string}, - {:password=>:string}, - ] - - api_method :getCategories, :returns => [[Blog::Category]], :expects => [ - {:blogid=>:string}, - {:username=>:string}, - {:password=>:string}, - ] - - api_method :getRecentPosts, :returns => [[Blog::Post]], :expects => [ - {:blogid=>:string}, - {:username=>:string}, - {:password=>:string}, - {:numberOfPosts=>:int}, - ] -end diff --git a/actionwebservice/examples/metaWeblog/apis/meta_weblog_service.rb b/actionwebservice/examples/metaWeblog/apis/meta_weblog_service.rb deleted file mode 100644 index 9c66558f1b..0000000000 --- a/actionwebservice/examples/metaWeblog/apis/meta_weblog_service.rb +++ /dev/null @@ -1,48 +0,0 @@ -require 'meta_weblog_api' - -class MetaWeblogService < ActionWebService::Base - web_service_api MetaWeblogAPI - - def initialize - @postid = 0 - end - - def newPost(id, user, pw, struct, publish) - $stderr.puts "id=#{id} user=#{user} pw=#{pw}, struct=#{struct.inspect} [#{publish}]" - (@postid += 1).to_s - end - - def editPost(post_id, user, pw, struct, publish) - $stderr.puts "id=#{post_id} user=#{user} pw=#{pw} struct=#{struct.inspect} [#{publish}]" - true - end - - def getPost(post_id, user, pw) - $stderr.puts "get post #{post_id}" - Blog::Post.new(:title => 'hello world', :description => 'first post!') - end - - def getCategories(id, user, pw) - $stderr.puts "categories for #{user}" - cat = Blog::Category.new( - :description => 'Tech', - :htmlUrl => 'http://blog/tech', - :rssUrl => 'http://blog/tech.rss') - [cat] - end - - def getRecentPosts(id, user, pw, num) - $stderr.puts "recent #{num} posts for #{user} on blog #{id}" - post1 = Blog::Post.new( - :title => 'first post!', - :link => 'http://blog.xeraph.org/testOne.html', - :description => 'this is the first post' - ) - post2 = Blog::Post.new( - :title => 'second post!', - :link => 'http://blog.xeraph.org/testTwo.html', - :description => 'this is the second post' - ) - [post1, post2] - end -end diff --git a/actionwebservice/examples/metaWeblog/controllers/xmlrpc_controller.rb b/actionwebservice/examples/metaWeblog/controllers/xmlrpc_controller.rb deleted file mode 100644 index 7486402d6c..0000000000 --- a/actionwebservice/examples/metaWeblog/controllers/xmlrpc_controller.rb +++ /dev/null @@ -1,16 +0,0 @@ -# -# example controller implementing both blogger and metaWeblog APIs -# in a way that should be compatible with clients supporting both/either. -# -# test by pointing your client at http://URL/xmlrpc/api -# - -require 'meta_weblog_service' -require 'blogger_service' - -class XmlrpcController < ApplicationController - web_service_dispatching_mode :layered - - web_service :metaWeblog, MetaWeblogService.new - web_service :blogger, BloggerService.new -end |