use of com.zyd.blog.file.exception.GlobalFileException in project OneBlog by zhangyd-c.
the class BaseApiClient method uploadImg.
@Override
public VirtualFile uploadImg(MultipartFile file) {
this.check();
if (file == null) {
throw new OssApiException("[" + this.storageType + "]文件上传失败:文件不可为空");
}
try {
VirtualFile res = this.uploadImg(file.getInputStream(), file.getOriginalFilename());
VirtualFile imageInfo = ImageUtil.getInfo(file);
return res.setSize(imageInfo.getSize()).setOriginalFileName(file.getOriginalFilename()).setWidth(imageInfo.getWidth()).setHeight(imageInfo.getHeight());
} catch (IOException e) {
throw new GlobalFileException("[" + this.storageType + "]文件上传失败:" + e.getMessage());
}
}
use of com.zyd.blog.file.exception.GlobalFileException in project OneBlog by zhangyd-c.
the class BaseFileUploader method getApiClient.
ApiClient getApiClient(String uploadType) {
SysConfigService configService = SpringContextHolder.getBean(SysConfigService.class);
Map<String, Object> config = configService.getConfigs();
String storageType = null;
if (null == config || StringUtils.isEmpty((storageType = (String) config.get(ConfigKeyEnum.STORAGE_TYPE.getKey())))) {
throw new ZhydException("[文件服务]当前系统暂未配置文件服务相关的内容!");
}
ApiClient res = null;
switch(storageType) {
case "local":
String localFileUrl = (String) config.get(ConfigKeyEnum.LOCAL_FILE_URL.getKey()), localFilePath = (String) config.get(ConfigKeyEnum.LOCAL_FILE_PATH.getKey());
res = new LocalApiClient().init(localFileUrl, localFilePath, uploadType);
break;
case "qiniu":
String accessKey = (String) config.get(ConfigKeyEnum.QINIU_ACCESS_KEY.getKey()), secretKey = (String) config.get(ConfigKeyEnum.QINIU_SECRET_KEY.getKey()), qiniuBucketName = (String) config.get(ConfigKeyEnum.QINIU_BUCKET_NAME.getKey()), baseUrl = (String) config.get(ConfigKeyEnum.QINIU_BASE_PATH.getKey());
res = new QiniuApiClient().init(accessKey, secretKey, qiniuBucketName, baseUrl, uploadType);
break;
case "aliyun":
String endpoint = (String) config.get(ConfigKeyEnum.ALIYUN_ENDPOINT.getKey()), accessKeyId = (String) config.get(ConfigKeyEnum.ALIYUN_ACCESS_KEY.getKey()), accessKeySecret = (String) config.get(ConfigKeyEnum.ALIYUN_ACCESS_KEY_SECRET.getKey()), url = (String) config.get(ConfigKeyEnum.ALIYUN_FILE_URL.getKey()), aliYunBucketName = (String) config.get(ConfigKeyEnum.ALIYUN_BUCKET_NAME.getKey());
res = new AliyunOssApiClient().init(endpoint, accessKeyId, accessKeySecret, url, aliYunBucketName, uploadType);
break;
case "youpaiyun":
break;
default:
break;
}
if (null == res) {
throw new GlobalFileException("[文件服务]当前系统暂未配置文件服务相关的内容!");
}
return res;
}
use of com.zyd.blog.file.exception.GlobalFileException in project OneBlog by zhangyd-c.
the class BizFileServiceImpl method upload.
@Override
@Transactional(rollbackFor = Exception.class)
public int upload(MultipartFile[] file) {
if (null == file || file.length == 0) {
throw new GlobalFileException("请至少选择一张图片!");
}
for (MultipartFile multipartFile : file) {
FileUploader uploader = new GlobalFileUploader();
uploader.upload(multipartFile, FileUploadType.COMMON.getPath(), true);
}
return file.length;
}
Aggregations