docs: @Override
      public StorePath uploadImage(FastImageFile fastImageFile) {
          String fileExtName = fastImageFile.getFileExtName();
          Validate.notNull(fastImageFile.getInputStream(), "上传文件流不能为空");
          Validate.notBlank(fileExtName, "文件扩展名不能为空");
          // 检查是否能处理此类图片
          if (!isSupportImage(fileExtName)) {
              throw new FdfsUnsupportImageTypeException("不支持的图片格式" + fileExtName);
          }
          // 获取存储节点
          StorageNode client = getStorageNode(fastImageFile.getGroupName());
          byte[] bytes = inputStreamToByte(fastImageFile.getInputStream());
  
          // 上传文件和metaDataSet
          StorePath path = uploadFileAndMetaData(client, new ByteArrayInputStream(bytes),
                  fastImageFile.getFileSize(), fileExtName,
                  fastImageFile.getMetaDataSet());
  
          //如果设置了需要上传缩略图
          if (null != fastImageFile.getThumbImage()) {
              // 上传缩略图
              uploadThumbImage(client, new ByteArrayInputStream(bytes), path.getPath(), fastImageFile);
          }
          bytes = null;
          return path;
      }