main
parent
254db5108a
commit
ec1a890891
@ -0,0 +1,47 @@
|
||||
package kr.re.etri.autoflow.controller;
|
||||
|
||||
import kr.re.etri.autoflow.service.storage.StorageProvider;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/test/storage")
|
||||
@RequiredArgsConstructor
|
||||
public class StorageTestController {
|
||||
|
||||
private final StorageProvider storageProvider;
|
||||
|
||||
@GetMapping("/info")
|
||||
public ResponseEntity<Map<String, Object>> getInfo() {
|
||||
Map<String, Object> info = new HashMap<>();
|
||||
info.put("providerClass", storageProvider.getClass().getSimpleName());
|
||||
return ResponseEntity.ok(info);
|
||||
}
|
||||
|
||||
@PostMapping("/upload")
|
||||
public ResponseEntity<String> testUpload(@RequestParam("file") MultipartFile file) {
|
||||
try (InputStream is = file.getInputStream()) {
|
||||
String objectName = "test/" + file.getOriginalFilename();
|
||||
storageProvider.uploadFileToDefault(objectName, is, file.getContentType(), file.getSize());
|
||||
return ResponseEntity.ok("Upload successful: " + objectName);
|
||||
} catch (Exception e) {
|
||||
return ResponseEntity.internalServerError().body("Upload failed: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/url")
|
||||
public ResponseEntity<String> getUrl(@RequestParam("name") String name) {
|
||||
try {
|
||||
String url = storageProvider.getFileUrl(null, name, null);
|
||||
return ResponseEntity.ok(url);
|
||||
} catch (Exception e) {
|
||||
return ResponseEntity.internalServerError().body("Failed to get URL: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in new issue