From: Felipe Contreras Date: 2007-05-09T18:02:10+09:00 Subject: Re: NetworkFacade 0.4 On 5/9/07, Florent Solt wrote: > NetworkFacade is an alternative to DRb, XML/RPC and other REST api, > all in one gem ! > > http://network-facade.rubyforge.org/ > > The easiest way to describe it, is through examples. > > A simple tcp client/server : > > # -- Server -- > class Foo > def bar; 42; end > end > server = NetworkFacade::Server.new(:port => 5042) > server << Foo.new > server.start > > # -- Client -- > class Foo < NetworkFacade::Client 'nf://localhost:5042' > end > f = Foo.new > puts f.bar > > A REST client, for Digg : > > class Digg < NetworkFacade::REST::Client 'http://services.digg.com' > mapping :apple_stories, '/stories/topic/apple' > mapping :me, '/user/pyros' > end > > d = Digg.new > puts d.apple_stories(:appkey => 'http://network-facade.rubyforge.org', > :count => 3, :type => :json) > puts d.me(:appkey => 'http://network-facade.rubyforge.org') > > Many other examples (Unix socket, SSL, Compression, Flickr, > Remember the milk, Netvibes) are explained here : > > http://network-facade.rubyforge.org/doc Sweet! I did something similar: http://snipplr.com/view/2476/ruby-rest/ But I definitely like your :mapping thing much better. I'm still not sure if I would like the whole Network Facade just for REST, but maybe it makes sense for XML/RPC or DRb. Good job. -- Felipe Contreras