Skip to content

Instantly share code, notes, and snippets.

@mattwynne
Created February 19, 2009 17:09
Show Gist options
  • Select an option

  • Save mattwynne/67005 to your computer and use it in GitHub Desktop.

Select an option

Save mattwynne/67005 to your computer and use it in GitHub Desktop.
require 'rubygems'
require File.dirname(__FILE__) + '/../rosetta_queue/lib/rosetta_queue'
RosettaQueue::Destinations.define do |queue|
queue.map :monitoring_acts, "/queue/bowie/monitoring_acts"
end
RosettaQueue::Adapter.define do |a|
a.user = ""
a.password = ""
a.host = "localhost"
a.port = 61613
a.type = "stomp"
end
class TestConsumer
include RosettaQueue::MessageHandler
subscribes_to :monitoring_acts
# options :persistent => true
def on_message(message)
message = YAML.load(message)
puts "We consumed a message: #{message.inspect}"
if message[:type] == "Image" || message[:type] == "Poster"
puts "interesting"
image_filename = message[:changes]["data"][1][:filename]
handle_image_uploaded(image_filename)
end
end
def handle_image_uploaded(filename)
puts "#{filename}"
end
end
RosettaQueue.logger = RosettaQueue::Logger.new(File.dirname(__FILE__) + '/log.txt')
require 'rosetta_queue/consumer_managers/threaded'
RosettaQueue::ThreadedManager.create do |m|
m.add(TestConsumer.new)
m.start
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment