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" }