SUPPORT-8381: some changes (2)

This commit is contained in:
Alexandr Shalaginov 2024-07-16 09:32:17 +03:00
parent 0bb98990e2
commit 3e9f52efa3

View file

@ -3,6 +3,8 @@ package ervu.service.fileupload.impl;
import java.io.IOException;
import java.util.UUID;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import ervu.client.fileupload.ErvuFileUploadClient;
import ervu.client.kafka.KafkaClient;
import ervu.service.fileupload.FileUploadV2Service;
@ -35,11 +37,14 @@ public class ErvuFileUploadV2ServiceImpl implements FileUploadV2Service {
byte[] content = multipartFile.getBytes();
if (this.ervuFileUploadClient.uploadFile(newFilename, content)) {
return this.kafkaClient.sendMessage(new KafkaMessage(
securityContext.getCurrentUsername(),
newFilename,
multipartFile.getOriginalFilename()
).toString());
String jsonMessage = getJsonKafkaMessage(
new KafkaMessage(
securityContext.getCurrentUsername(),
newFilename,
multipartFile.getOriginalFilename()
)
);
return this.kafkaClient.sendMessage(jsonMessage);
}
else {
return false;
@ -53,12 +58,22 @@ public class ErvuFileUploadV2ServiceImpl implements FileUploadV2Service {
private String getNewFilename(String oldFilename) {
return UUID.randomUUID() + "." + FilenameUtils.getExtension(oldFilename);
}
private String getJsonKafkaMessage(KafkaMessage kafkaMessage) {
ObjectMapper mapper = new ObjectMapper();
try {
return mapper.writeValueAsString(kafkaMessage);
}
catch (JsonProcessingException e) {
throw new RuntimeException(String.format("Fail get json from: %s", kafkaMessage), e);
}
}
}
class KafkaMessage {
private String username;
private String filename;
private String originalFilename;
private final String username;
private final String filename;
private final String originalFilename;
public KafkaMessage(String username, String filename, String originalFilename) {
this.username = username;
@ -74,4 +89,4 @@ class KafkaMessage {
", originalFilename='" + originalFilename + '\'' +
'}';
}
}
}