# File gofer/messaging/consumer.rb, line 151
  def search(sn, timeout)
    puts "#{self.id} searching for: sn=#{sn}"
    while true
      envelope = self.next(timeout)
      if envelope.nil?
        return
      end
      if sn == envelope['sn']
        puts "#{self.id} search found:\n#{envelope}"
        return envelope
      end
      puts "#{self.id} search found:\n#{envelope}"
      self.ack()
    end
  end