diff --git a/pom.xml b/pom.xml index 2adc954..40bca8c 100644 --- a/pom.xml +++ b/pom.xml @@ -38,6 +38,7 @@ udf-starter-amqp-rabbitmq udf-starter-file udf-starter-file-aliyun-oss + udf-starter-file-aliyun-oss-api udf-starter-mail udf-starter-scheduler udf-starter-scheduler-client @@ -105,6 +106,12 @@ udf-starter-file-aliyun-oss ${udf-starter.version} + + + org.itkk.udf + udf-starter-file-aliyun-oss-api + ${udf-starter.version} + org.itkk.udf diff --git a/udf-starter-core/src/main/java/org/itkk/udf/core/domain/aliyun/oss/DownloadInfo.java b/udf-starter-core/src/main/java/org/itkk/udf/core/domain/aliyun/oss/DownloadInfo.java new file mode 100644 index 0000000..bc80299 --- /dev/null +++ b/udf-starter-core/src/main/java/org/itkk/udf/core/domain/aliyun/oss/DownloadInfo.java @@ -0,0 +1,37 @@ +package org.itkk.udf.core.domain.aliyun.oss; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * DownloadInfo + */ +@ApiModel(description = "文件下载信息") +@Data +public class DownloadInfo { + + /** + * id + */ + @ApiModelProperty(value = "下载ID", required = true, dataType = "string") + private String id; + + /** + * status + */ + @ApiModelProperty(value = "下载状态 ( 1 : 待执行 , 2 : 执行中 , 3 : 执行完成 , 4 : 执行错误 )", required = true, dataType = "int") + private Integer status; + + /** + * objectKey + */ + @ApiModelProperty(value = "阿里云OSS的objectKey", required = true, dataType = "string") + private String objectKey; + + /** + * errorMsg + */ + @ApiModelProperty(value = "错误信息", required = true, dataType = "string") + private String errorMsg; +} diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/AliyunOssProperties.java b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/AliyunOssProperties.java similarity index 82% rename from udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/AliyunOssProperties.java rename to udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/AliyunOssProperties.java index a0b0640..7ebaae2 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/AliyunOssProperties.java +++ b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/AliyunOssProperties.java @@ -4,11 +4,11 @@ * Created by Administrator * Copyright (C) 2016 itkk.org, All rights reserved. */ -package org.itkk.udf.file.aliyun.oss; +package org.itkk.udf.file.aliyun.oss.api; import lombok.Data; -import org.itkk.udf.file.aliyun.oss.meta.AliyunOssAccessMeta; -import org.itkk.udf.file.aliyun.oss.meta.AliyunOssPathMeta; +import org.itkk.udf.file.aliyun.oss.api.meta.AliyunOssAccessMeta; +import org.itkk.udf.file.aliyun.oss.api.meta.AliyunOssPathMeta; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/OssWarpper.java b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/OssWarpper.java similarity index 85% rename from udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/OssWarpper.java rename to udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/OssWarpper.java index 30c3d86..37a66fc 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/OssWarpper.java +++ b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/OssWarpper.java @@ -1,4 +1,4 @@ -package org.itkk.udf.file.aliyun.oss; +package org.itkk.udf.file.aliyun.oss.api; import com.aliyun.oss.OSSClient; import com.aliyun.oss.common.utils.BinaryUtil; @@ -6,12 +6,13 @@ import com.aliyun.oss.model.PolicyConditions; import org.apache.commons.lang3.StringUtils; import org.itkk.udf.core.ApplicationConfig; import org.itkk.udf.core.exception.ParameterValidException; -import org.itkk.udf.file.aliyun.oss.domain.PolicyResult; -import org.itkk.udf.file.aliyun.oss.meta.AliyunOssAccessMeta; -import org.itkk.udf.file.aliyun.oss.meta.AliyunOssPathMeta; +import org.itkk.udf.file.aliyun.oss.api.domain.PolicyResult; +import org.itkk.udf.file.aliyun.oss.api.meta.AliyunOssAccessMeta; +import org.itkk.udf.file.aliyun.oss.api.meta.AliyunOssPathMeta; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.io.File; import java.io.UnsupportedEncodingException; import java.net.URL; import java.sql.Date; @@ -176,4 +177,27 @@ public class OssWarpper { } } + /** + * 文件上传 + * + * @param code code + * @param file file + */ + public void uploadFile(String code, File file) { + //判空 + if (!aliyunOssProperties.getAuth().containsKey(code) || !aliyunOssProperties.getPath().containsKey(code)) { + throw new ParameterValidException("aliyun oss code:" + code + "未定义", null); + } + //获得认证信息 和 路径信息 + AliyunOssAccessMeta auth = aliyunOssProperties.getAuth().get(code); + AliyunOssPathMeta path = aliyunOssProperties.getPath().get(code); + //实例化oss对象 + OSSClient client = new OSSClient(auth.getEndPoint(), auth.getAccessId(), auth.getAccessKey()); + try { + client.putObject(path.getBucketName(), file.getName(), file); + } finally { + client.shutdown(); + } + } + } diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/domain/PolicyResult.java b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/domain/PolicyResult.java similarity index 83% rename from udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/domain/PolicyResult.java rename to udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/domain/PolicyResult.java index 3f93c46..9f665e2 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/domain/PolicyResult.java +++ b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/domain/PolicyResult.java @@ -1,7 +1,7 @@ -package org.itkk.udf.file.aliyun.oss.domain; +package org.itkk.udf.file.aliyun.oss.api.domain; import lombok.Data; -import org.itkk.udf.file.aliyun.oss.meta.AliyunOssPathMeta; +import org.itkk.udf.file.aliyun.oss.api.meta.AliyunOssPathMeta; import java.io.Serializable; diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssAccessMeta.java b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssAccessMeta.java similarity index 93% rename from udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssAccessMeta.java rename to udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssAccessMeta.java index 7a1ab9d..2514e8f 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssAccessMeta.java +++ b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssAccessMeta.java @@ -4,7 +4,7 @@ * Created by Administrator * Copyright (C) 2016 itkk.org, All rights reserved. */ -package org.itkk.udf.file.aliyun.oss.meta; +package org.itkk.udf.file.aliyun.oss.api.meta; import lombok.Data; diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssPathMeta.java b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssPathMeta.java similarity index 93% rename from udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssPathMeta.java rename to udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssPathMeta.java index c9df30e..05c9c1e 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/meta/AliyunOssPathMeta.java +++ b/udf-starter-file-aliyun-oss-api/src/main/java/org/itkk/udf/file/aliyun/oss/api/meta/AliyunOssPathMeta.java @@ -4,7 +4,7 @@ * Created by Administrator * Copyright (C) 2016 itkk.org, All rights reserved. */ -package org.itkk.udf.file.aliyun.oss.meta; +package org.itkk.udf.file.aliyun.oss.api.meta; import lombok.Data; diff --git a/udf-starter-file-aliyun-oss/pom.xml b/udf-starter-file-aliyun-oss/pom.xml index 5e3f575..1aa5517 100644 --- a/udf-starter-file-aliyun-oss/pom.xml +++ b/udf-starter-file-aliyun-oss/pom.xml @@ -20,11 +20,10 @@ org.itkk.udf udf-starter-core - + - com.aliyun.oss - aliyun-sdk-oss - ${aliyun-sdk-oss.version} + org.itkk.udf + udf-starter-file-aliyun-oss-api diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/AliyunOssController.java b/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/AliyunOssController.java index fe5fbf4..0ebcd1a 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/AliyunOssController.java +++ b/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/AliyunOssController.java @@ -7,9 +7,9 @@ package org.itkk.udf.file.aliyun.oss.web; import org.itkk.udf.core.RestResponse; -import org.itkk.udf.file.aliyun.oss.OssWarpper; import org.itkk.udf.core.domain.aliyun.oss.OssParam; -import org.itkk.udf.file.aliyun.oss.domain.PolicyResult; +import org.itkk.udf.file.aliyun.oss.api.OssWarpper; +import org.itkk.udf.file.aliyun.oss.api.domain.PolicyResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; diff --git a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/IAliuyinOssController.java b/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/IAliuyinOssController.java index 0656e86..e44ed3c 100644 --- a/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/IAliuyinOssController.java +++ b/udf-starter-file-aliyun-oss/src/main/java/org/itkk/udf/file/aliyun/oss/web/IAliuyinOssController.java @@ -12,7 +12,7 @@ import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.itkk.udf.core.RestResponse; import org.itkk.udf.core.domain.aliyun.oss.OssParam; -import org.itkk.udf.file.aliyun.oss.domain.PolicyResult; +import org.itkk.udf.file.aliyun.oss.api.domain.PolicyResult; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping;