/** Background processing */
  public void run() {
    try {
      if (logger.isActivated()) {
        logger.info("Initiate a new HTTP group file transfer session as originating");
      }

      // Upload the file to the HTTP server
      byte[] result = uploadManager.uploadFile();
      sendResultToContact(result);
    } catch (Exception e) {
      if (logger.isActivated()) {
        logger.error("File transfer has failed", e);
      }

      // Unexpected error
      handleError(new FileSharingError(FileSharingError.UNEXPECTED_EXCEPTION, e.getMessage()));
    }
  }