From 775270f6c4f5a9978af3c55523d9a46b3e338e4d Mon Sep 17 00:00:00 2001 From: Alberto Perdomo Date: Fri, 18 Dec 2009 11:38:52 +0000 Subject: [PATCH] Added warren/bunny simple examples --- warren/warren_bunny_receiver.rb | 26 ++++++++++++++++++++++++ warren/warren_bunny_sender.rb | 36 +++++++++++++++++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 warren/warren_bunny_receiver.rb create mode 100644 warren/warren_bunny_sender.rb diff --git a/warren/warren_bunny_receiver.rb b/warren/warren_bunny_receiver.rb new file mode 100644 index 0000000..792e4c0 --- /dev/null +++ b/warren/warren_bunny_receiver.rb @@ -0,0 +1,26 @@ +require "rubygems" +require "warren" +require "warren/adapters/bunny_adapter" + +Signal.trap("INT") { exit! } +Signal.trap("TERM") { exit! } + +# Listen to the main queue +q = "main" +puts "Listening to the #{q} queue." + +# Setup our own connection before generating the queue object +conn = Warren::Connection.new("development" => { + :user => "guest", + :pass => "guest", + :vhost => "/", + :default_queue => "main", + :logging => false +}) +# Set the connection for the queue +Warren::Queue.connection = conn + +# And attach a block for new messages to fire +Warren::Queue.subscribe(q) do |msg| + p [Time.now, msg] +end diff --git a/warren/warren_bunny_sender.rb b/warren/warren_bunny_sender.rb new file mode 100644 index 0000000..78c75e6 --- /dev/null +++ b/warren/warren_bunny_sender.rb @@ -0,0 +1,36 @@ +require "rubygems" +require "warren" +require "warren/adapters/bunny_adapter" + +Signal.trap("INT") { exit! } +Signal.trap("TERM") { exit! } + +# Setup our own connection before generating the queue object +conn = Warren::Connection.new("development" => { + :user => "guest", + :pass => "guest", + :vhost => "/", + :default_queue => "main", + :logging => false +}) +# Set the connection for the queue +Warren::Queue.connection = conn +# Generate some data to send +data = { + :people => [ + :fred => { + :age => 25, + :location => "Leeds" + }, + :george => { + :age => 32, + :location => "London" + } + ] +} + +# Push a message onto the queue +p Warren::Queue.publish(:default, data ) + +# And then push a message onto the queue, returning "foo" +#p Warren::Queue.publish(:default, data) { "foo" }