2025-12-17 13:41:05 +07:00
|
|
|
package ru.soune.nocopy.service.file;
|
2025-12-15 19:49:09 +07:00
|
|
|
|
|
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
2025-12-17 13:41:05 +07:00
|
|
|
import ru.soune.nocopy.dto.file.UploadProgressResponse;
|
|
|
|
|
import ru.soune.nocopy.entity.file.FileUploadSession;
|
2025-12-15 19:49:09 +07:00
|
|
|
|
2025-12-16 03:44:59 +07:00
|
|
|
import java.io.IOException;
|
|
|
|
|
|
2025-12-15 19:49:09 +07:00
|
|
|
public interface FileUploadService {
|
|
|
|
|
FileUploadSession initUpload(Long userId, String fileName,
|
2025-12-16 14:27:03 +07:00
|
|
|
String fileType, String extension, long fileSize);
|
2025-12-15 19:49:09 +07:00
|
|
|
|
|
|
|
|
UploadProgressResponse uploadChunk(String uploadId, Integer chunkNumber,
|
2025-12-16 03:44:59 +07:00
|
|
|
MultipartFile chunkFile) throws IOException;
|
2025-12-15 19:49:09 +07:00
|
|
|
|
|
|
|
|
UploadProgressResponse getUploadProgress(String uploadId);
|
|
|
|
|
|
2025-12-25 15:27:45 +07:00
|
|
|
void handleExpiredSession(FileUploadSession session);
|
2025-12-16 03:44:59 +07:00
|
|
|
|
2026-01-26 14:14:56 +07:00
|
|
|
void cancelUpload(String uploadId);
|
2025-12-15 19:49:09 +07:00
|
|
|
}
|