require 'drb' require 'yaml' module Adaptation module Mom class druby_subscriber def initialize subscriber_uri, mom_uri, topics @subscriber_uri = subscriber_uri @mom_uri = mom_uri @topics = topics end def call_adaptor message, topic if ( (@topics.include?(topic)) or (@topics == "all") ) system("ruby public/dispatch.rb #{message}") end puts "#{topic} => #{message}" end def subscription_result subscribed if subscribed puts "Subscribed to mom (#{@mom_uri}). Listening at #{@subscriber_uri}" end end def start DRb.start_service(@subscriber_uri, self) mom = DRbObject.new(nil, @mom_uri) mom.subscribe @subscriber_uri DRb.thread.join # Don't exit just yet! end end end end