diff --git a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/data/enums/FilenameTemplate.java b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/data/enums/FilenameTemplate.java index 03327e824..d534771cb 100644 --- a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/data/enums/FilenameTemplate.java +++ b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/data/enums/FilenameTemplate.java @@ -79,10 +79,14 @@ public enum FilenameTemplate { for (SftpFileInfo file : files) { String name = file.getFilename(); String[] splitName = name.split("_"); + if (splitName.length < 3) + throw new IllegalArgumentException("Filename did not contains 3 or 4 separator \"_\": " + name); String prefix = splitName[0]; String timestamp = splitName[2]; if (prefix.equalsIgnoreCase(prefixOfTable) && timestamp.contains(timestampNow)) { + if (splitName.length < 4) + throw new IllegalArgumentException("Filename did not contains 4 separator \"_\": " + name); String counter = splitName[3]; int positionOfDot = counter.indexOf('.'); if (positionOfDot != -1) { diff --git a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/PrepareDBFFile.java b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/PrepareDBFFile.java index ff8acaed5..2b88238c0 100644 --- a/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/PrepareDBFFile.java +++ b/clearing-parent/dbf-exporter/src/main/java/ru/spcex/clearing/dbf/exporter/logic/stages/PrepareDBFFile.java @@ -39,6 +39,7 @@ public class PrepareDBFFile extends Stage implements InitializingBean { public StageResult process(ResultContainer resultContainer) { Objects.requireNonNull(resultContainer.getTableForExport()); List files = gateway.listFiles(settings.getStore().getOutDir()); + log.debug("From sFTP dir \"{}\" list {} file names.", settings.getStore().getOutDir(), files.size()); Table table = resultContainer.getTableForExport(); LocalDateTime currentDateTime = LocalDateTime.now(); resultContainer.setRegistrationDateTime(currentDateTime); @@ -64,6 +65,7 @@ public class PrepareDBFFile extends Stage implements InitializingBean { throw new IOException("Output directory " + outDirPath + " is file."); if (!outDirFile.exists()) Files.createDirectories(outDirFile.toPath()); this.outDir = outDirPath; + log.info("Output directory: {}", outDirFile.getAbsolutePath()); } private static final Map nameTemplates = new EnumMap<>(Table.class);