|
@@ -0,0 +1,60 @@
|
|
|
+package com.zhentao.common.oss;
|
|
|
+
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
+import java.io.*;
|
|
|
+
|
|
|
+public class SimpleBytesMultipartFile implements MultipartFile {
|
|
|
+ private final String name;
|
|
|
+ private final String originalFilename;
|
|
|
+ private final String contentType;
|
|
|
+ private final byte[] content;
|
|
|
+
|
|
|
+ public SimpleBytesMultipartFile(String name, String originalFilename, String contentType, byte[] content) {
|
|
|
+ this.name = name;
|
|
|
+ this.originalFilename = originalFilename;
|
|
|
+ this.contentType = contentType;
|
|
|
+ this.content = content;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getName() {
|
|
|
+ return name;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getOriginalFilename() {
|
|
|
+ return originalFilename;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getContentType() {
|
|
|
+ return contentType;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean isEmpty() {
|
|
|
+ return content == null || content.length == 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public long getSize() {
|
|
|
+ return content.length;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public byte[] getBytes() throws IOException {
|
|
|
+ return content;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public InputStream getInputStream() throws IOException {
|
|
|
+ return new ByteArrayInputStream(content);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void transferTo(File dest) throws IOException, IllegalStateException {
|
|
|
+ try (FileOutputStream fos = new FileOutputStream(dest)) {
|
|
|
+ fos.write(content);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|