code: def enqueue(self, destination):
          
          if not destination:
              raise BgpProcessorError('Invalid destination %s.' % destination)
  
          dest_queue = self._dest_queue
          # RtDest are queued in a separate queue
          if destination.route_family == RF_RTC_UC:
              dest_queue = self._rtdest_queue
  
          # We do not add given destination to the queue for processing if
          # it is already on the queue.
          if not dest_queue.is_on_list(destination):
              dest_queue.append(destination)
  
          # Wake-up processing thread if sleeping.
          self.dest_que_evt.set()
docs: Enqueues given destination for processing.
  
          Given instance should be a valid destination.