| 20 | import java.util.Map; |
| 21 | |
| 22 | @Service |
| 23 | public class OSSImageupload { |
| 24 | private static Logger logger = LoggerFactory.getLogger(OSSImageupload.class); |
| 25 | static OSS ossClient; |
| 26 | static Keys key; |
| 27 | |
| 28 | public ReturnImage ImageuploadOSS( |
| 29 | Map<Map<String, String>, File> fileMap, String username, Integer keyID) { |
| 30 | ReturnImage returnImage = new ReturnImage(); |
| 31 | File file = null; |
| 32 | FileInputStream stream = null; |
| 33 | ObjectMetadata meta = new ObjectMetadata(); |
| 34 | meta.setHeader("Content-Disposition", "inline"); |
| 35 | try { |
| 36 | for (Map.Entry<Map<String, String>, File> entry : fileMap.entrySet()) { |
| 37 | String prefix = entry.getKey().get("prefix"); |
| 38 | String ShortUIDName = entry.getKey().get("name"); |
| 39 | file = entry.getValue(); |
| 40 | stream = new FileInputStream(file); |
| 41 | Msg fileMiME = TypeDict.FileMiME(stream); |
| 42 | meta.setHeader("content-type", fileMiME.getData().toString()); |
| 43 | PutObjectRequest putObjectRequest = |
| 44 | new PutObjectRequest( |
| 45 | key.getBucketname(), |
| 46 | username + "/" + ShortUIDName + "." + prefix, |
| 47 | stream, |
| 48 | meta); |
| 49 | ossClient.putObject(putObjectRequest); |
| 50 | try {if(stream!=null){stream.close();}} catch (Exception e) { } |
| 51 | } |
| 52 | returnImage.setCode("200"); |
| 53 | } catch (Exception e) { |
| 54 | try {if(stream!=null){stream.close();}} catch (Exception ex) { } |
| 55 | logger.error("OSS上传发生异常:",e); |
| 56 | returnImage.setCode("500"); |
| 57 | } |
| 58 | return returnImage; |
| 59 | } |
| 60 | |
| 61 | public static Integer Initialize(Keys k) { |
| 62 | int ret = -1; |
| 63 | ObjectListing objectListing = null; |
| 64 | if (StringUtils.isBlank(k.getAccessKey()) |
| 65 | || StringUtils.isBlank(k.getAccessSecret()) |
| 66 | || StringUtils.isBlank(k.getEndpoint()) |
| 67 | || StringUtils.isBlank(k.getBucketname()) |
| 68 | || StringUtils.isBlank(k.getRequestAddress())) { |
| 69 | return -1; |
| 70 | } |
| 71 | OSS ossObj = |
| 72 | new OSSClientBuilder() |
| 73 | .build(k.getEndpoint(), k.getAccessKey(), k.getAccessSecret()); |
| 74 | try { |
| 75 | objectListing = ossObj.listObjects(k.getBucketname()); |
| 76 | ret = 1; |
| 77 | ossClient = ossObj; |
| 78 | key = k; |
| 79 | } catch (Exception e) { |
nothing calls this directly
no outgoing calls
no test coverage detected