# File lib/adaptation/mom.rb, line 36
      def start
        DRb.start_service(@mom_uri, self)
        puts "MOM started. Listening at #{@mom_uri}"
     
        @sleeper = Thread.new{
          loop do 

            # deliver all messages
            while !@messages.empty?
              @messages.each do |message|
                get_subscribers.each do |uri|
                  begin
                    puts "Calling #{uri}"
                    DRb.start_service
                    oapdaemon = DRbObject.new(nil, uri)
                    oapdaemon.send_message message[0], message[1]
                  rescue
                    puts "Couldn't send message to subscriber: #{uri}"
                  end
                end
                @messages.delete message
              end
            end

            # go to sleep
            Thread.stop
          
          end
        }
         
        @sleeper.join
        DRb.thread.join # Don't exit just yet
      end