public void verifyTotalFilesSize()

in digital-document-service/src/main/java/com/epam/digital/data/platform/dgtldcmnt/service/ValidationService.java [82:96]


  public void verifyTotalFilesSize(UploadDocumentFromUserFormDto uploadDto) {
    var metadata = formDataFileStorageService.getMetadata(uploadDto.getRootProcessInstanceId());
    var otherFilesSize = metadata.stream()
        .filter(md -> uploadDto.getFormKey().equals(md.getFormKey()) &&
            uploadDto.getFieldName().equals(md.getFieldName()))
        .mapToDouble(FileMetadataDto::getContentLength)
        .sum();
    var currentFileSize = uploadDto.getSize();
    if (currentFileSize + otherFilesSize > digitalDocumentsProperties.getMaxTotalFileSize()
        .toBytes()) {
      throw new BatchFileMaxSizeException(
          String.format(TOTAL_FILES_SIZE_EXCEEDS_MAX_BATCH_FILES_SIZE_MSG,
              digitalDocumentsProperties.getMaxTotalFileSize().toMegabytes()));
    }
  }