extracting utility class

This commit is contained in:
rusefillc 2022-11-10 09:05:02 -05:00
parent 627c597838
commit a92be95fcc
2 changed files with 29 additions and 11 deletions

View File

@ -2,11 +2,11 @@ package com.rusefi.can;
import com.rusefi.can.reader.CANLineReader;
import com.rusefi.can.reader.dbc.DbcFile;
import com.rusefi.util.FolderUtil;
import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.Objects;
public class ConvertTrcToMegaLogViewerWithDBC {
public static void doJob(String dbcFileName, String inputFolderName, String outputFolder) throws IOException {
@ -15,18 +15,15 @@ public class ConvertTrcToMegaLogViewerWithDBC {
System.out.println("inputFolderName " + inputFolderName);
System.out.println("outputFolder " + outputFolder);
File inputFolder = new File(inputFolderName);
for (String inputFile : Objects.requireNonNull(inputFolder.list((dir, name) -> name.endsWith(".trc")))) {
System.out.println("Handling " + inputFile);
FolderUtil.FileAction fileAction = (simpleFileName, fullFileName) -> {
List<CANPacket> packets = CANLineReader.getReader().readFile(fullFileName);
String fullInputFile = inputFolderName + File.separator + inputFile;
List<CANPacket> packets = CANLineReader.getReader().readFile(fullInputFile);
String outputFileName = outputFolder + File.separator + inputFile + ".mlg";
String outputFileName = outputFolder + File.separator + simpleFileName + ".mlg";
LoggingStrategy.writeLog(dbc, packets, outputFileName);
}
}
};
FolderUtil.handleFolder(inputFolderName, fileAction);
}
}

View File

@ -0,0 +1,21 @@
package com.rusefi.util;
import java.io.File;
import java.io.IOException;
import java.util.Objects;
public class FolderUtil {
public static void handleFolder(String inputFolderName, FileAction fileAction) throws IOException {
File inputFolder = new File(inputFolderName);
for (String simpleFileName : Objects.requireNonNull(inputFolder.list((dir, name) -> name.endsWith(".trc")))) {
System.out.println("Handling input file " + simpleFileName);
String fullInputFile = inputFolderName + File.separator + simpleFileName;
fileAction.doJob(simpleFileName, fullInputFile);
}
}
public interface FileAction {
void doJob(String simpleFileName, String fullFileName) throws IOException;
}
}