diff options
author | Leon Breedt <bitserf@gmail.com> | 2005-03-10 11:53:29 +0000 |
---|---|---|
committer | Leon Breedt <bitserf@gmail.com> | 2005-03-10 11:53:29 +0000 |
commit | 4f2f408ba1a7dd976a1ec5061d05ef0439e5f942 (patch) | |
tree | d681ffebeda753c1df5450fef68bb298a27f3137 /actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb | |
parent | 4e8ca35defa317d22a0b7916f20a4725c235b90c (diff) | |
download | rails-4f2f408ba1a7dd976a1ec5061d05ef0439e5f942.tar.gz rails-4f2f408ba1a7dd976a1ec5061d05ef0439e5f942.tar.bz2 rails-4f2f408ba1a7dd976a1ec5061d05ef0439e5f942.zip |
allow 0, 1, '0' or '1' to be cast to the appropriate values for boolean
values.
update XML-RPC example to work in :layered mode.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@883 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb')
-rw-r--r-- | actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb b/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb new file mode 100644 index 0000000000..adef12a20f --- /dev/null +++ b/actionwebservice/examples/metaWeblog/apis/meta_weblog_api.rb @@ -0,0 +1,67 @@ +# +# 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 |