code: def _add_to_upload_queue(self, src, rfile, uid):
          # type: (Uploader, blobxfer.models.upload.LocalPath,
          #        blobxfer.models.azure.StorageEntity, str) -> None
          
          # prepare local file for upload
          ud = blobxfer.models.upload.Descriptor(
              src, rfile, uid, self._spec.options, self._general_options,
              self._resume)
          if ud.entity.is_encrypted:
              with self._upload_lock:
                  self._ud_map[uid] = ud
          # add download descriptor to queue
          self._upload_queue.put(ud)
          if self._upload_start_time is None:
              with self._upload_lock:
                  if self._upload_start_time is None:
                      self._upload_start_time = blobxfer.util.datetime_now()
docs: Add remote file to download queue
          :param Uploader self: this
          :param blobxfer.models.upload.LocalPath src: local path
          :param blobxfer.models.azure.StorageEntity rfile: remote file
          :param str uid: unique id