private boolean processDirectory(boolean populate, File directory, IObject target) throws Throwable { String iniFilePath = directory + File.separator + "test_setup.ini"; log.info("INI file path: " + iniFilePath); // Load up the main ini file TestEngineIniFile iniFile = new TestEngineIniFile(new File(iniFilePath)); interceptor.setIniFile(iniFile); String[] fileTypes = iniFile.getFileTypes(); if (populate = true && fileTypes != null) { // get all files in the directory File[] datasetFiles = directory.listFiles(); for (File datasetFile : datasetFiles) { for (String fileType : fileTypes) { if (datasetFile.isFile() && datasetFile.getName().endsWith("." + fileType) && !datasetFile.getName().startsWith(".")) { iniFile.addFile(datasetFile.getName()); } } } } else if (populate = true && fileTypes == null) { log.error("No filetypes for " + iniFilePath); } // The filtered list of files we're to attempt to import String[] fileList = iniFile.getFileList(); // Sanity check if (fileList.length < 1) { log.error("No files available to import."); } for (int j = 0; j < fileList.length; j++) { if (fileList[j].equals("populate_options")) continue; File file = new File(directory + File.separator + fileList[j]); // Import and return pixels list log.info("------Importing file: " + file + "------"); // Skip missing files if (!file.exists()) { log.warn("Image file " + file.getName() + " missing but referenced in test_setup.ini"); continue; } try { // Do import start = new Date(); interceptor.setSourceFile(file); ImportContainer ic = new ImportContainer(file, target, null, null, null, null); ic.setUserSpecifiedName(fileList[j]); importLibrary.importImage(ic, 0, 0, 1); iniFile.flush(); } catch (Throwable e) { // Flush our file log to disk try { iniFile.flush(); } catch (Throwable e1) { log.error("Failed on flushing ini file" + e1); } // store.logout(); log.error("Failed on file: " + file.getAbsolutePath(), e); errors += 1; sendRequest("", "TestEngine Error", e, file); // throw e; } } return true; }