Я хочу сохранить сгенерированные файлы в Minio .Для ключей я использовал UUID:
String uuid = UUID.randomUUID().toString();
Например, в слое сервиса у меня есть следующий метод, который помещает сгенерированный файл в некоторое ведро, но я хочу быть уверен, что объект с этим ключом несуществует еще.
@SneakyThrows
@Transactional(readOnly = true)
public String createInventoryFile(List<Long> ids,
@NonNull Workstation workstation) {
List<String> fileNames =
documentService.findAllFileNamesByIdsAndWorkstation(ids, workstation);
var uuid = UUID.randomUUID().toString();
try (var inputStream = docFileCreator.createInventoryFile(fileNames)) {
minioClient.putObject(
bucketName,
uuid, // may cause to collision
inputStream,
FILE_CONTENT_TYPE
);
}
return uuid;
}
Предлагаемые проверки в основном "исключаются":
Как наиболее правильно проверить существование объекта в Minio?Загрузка всех объектов в память и итерация по ним, мне кажется, не является решением, поскольку объектов может быть много.