public static void fileWithColdestTemperature() { String fileName = null; CSVRecord lowestSoFar = null; double lowestTemp = 99999; DirectoryResource dr = new DirectoryResource(); for (File f : dr.selectedFiles()) { FileResource fr = new FileResource(f); CSVRecord currentRow = coldestHourInFile(fr.getCSVParser()); double currentTemp = Double.parseDouble(currentRow.get("TemperatureF")); if (currentTemp < lowestTemp) { lowestTemp = currentTemp; lowestSoFar = currentRow; fileName = f.getName(); } /* if (lowestSoFar == null) { lowestSoFar = currentRow; fileName = f.getName(); selectedFr = fr; } else { lowestSoFar = getLowestOfTwo(currentRow, lowestSoFar); fileName = f.getName(); selectedFr = fr; } */ } System.out.println("Coldest day was in file " + fileName); System.out.println("Coldest temperature on that day was " + lowestSoFar.get("TemperatureF")); System.out.println("All the Temperatures on the coldest day were:"); }
public static CSVRecord lowestHumidityInManyFiles() { CSVRecord lowestSoFar = null; DirectoryResource dir = new DirectoryResource(); for (File file : dir.selectedFiles()) { FileResource fr = new FileResource(file); CSVParser csv = fr.getCSVParser(); CSVRecord lowestInFile = lowestHumidityInFile(csv); lowestSoFar = getLowestOfTwo(lowestInFile, lowestSoFar); } return lowestSoFar; }
public static CSVRecord hottestInManyDays() { CSVRecord largestSoFar = null; DirectoryResource dr = new DirectoryResource(); for (File f : dr.selectedFiles()) { FileResource fr = new FileResource(f); CSVRecord currentRow = hottestHourInFile(fr.getCSVParser()); if (largestSoFar == null) { largestSoFar = currentRow; } else { largestSoFar = getLargestOfTwo(currentRow, largestSoFar); } } return largestSoFar; }
@Test(expected = ResourceException.class) public void testMoveDirectoryResourceToFile() throws IOException { File file = File.createTempFile("fileresourcetest", ".tmp"); file.deleteOnExit(); file.createNewFile(); File folder = OperatingSystemUtils.createTempDir(); folder.deleteOnExit(); folder.mkdir(); DirectoryResource folderResource = resourceFactory.create(DirectoryResource.class, folder); FileResource fileResource = resourceFactory.create(FileResource.class, file); folderResource.moveTo(fileResource); }
/** * Takes selected files and returns name of file with lowest temp * * @return name of file with lowest temperature */ public static String fileWithColdestTemperature() { DirectoryResource dir = new DirectoryResource(); CSVRecord lowestSoFar = null; File lowestFile = null; for (File fr : dir.selectedFiles()) { FileResource frR = new FileResource(fr); CSVParser csv = frR.getCSVParser(); CSVRecord record = coldestHourInFile(csv); if (coldestOfTwo(record, lowestSoFar)) { lowestFile = fr; } } return lowestFile.getAbsolutePath(); }
@Test public void testDeleteDirectoryNotRecursive() throws IOException { File folder = OperatingSystemUtils.createTempDir(); folder.deleteOnExit(); folder.mkdir(); DirectoryResource folderResource = resourceFactory.create(DirectoryResource.class, folder); Assert.assertTrue(folderResource.isDirectory()); Assert.assertTrue(folderResource.exists()); folderResource.delete(); Assert.assertTrue(!folderResource.exists()); }
public static CSVRecord lowestHumidityInManyFiles() { CSVRecord lowestRecordSoFar = null; double lowestHumiditySoFar = 101; DirectoryResource dr = new DirectoryResource(); for (File f : dr.selectedFiles()) { FileResource fr = new FileResource(f); CSVParser parser = fr.getCSVParser(); CSVRecord record = lowestHumidityInFile(parser); double currentHumidity = Double.parseDouble(record.get("Humidity")); if (currentHumidity < lowestHumiditySoFar) { lowestHumiditySoFar = currentHumidity; lowestRecordSoFar = record; } } return lowestRecordSoFar; }
@Test public void testDeleteDirectoryRecursive() throws IOException { File folder = OperatingSystemUtils.createTempDir(); folder.deleteOnExit(); folder.mkdir(); File folder2 = OperatingSystemUtils.createTempDir(); folder2.deleteOnExit(); folder2.mkdir(); File file = File.createTempFile("fileresourcetest", ".tmp"); file.deleteOnExit(); file.createNewFile(); File file2 = File.createTempFile("fileresourcetest2", ".tmp"); file2.deleteOnExit(); file2.createNewFile(); DirectoryResource folderResource = resourceFactory.create(DirectoryResource.class, folder); FileResource<?> src = resourceFactory.create(file).reify(FileResource.class); src.moveTo(folderResource); DirectoryResource folderResource2 = resourceFactory.create(DirectoryResource.class, folder2); FileResource<?> src2 = resourceFactory.create(file2).reify(FileResource.class); folderResource2.moveTo(folderResource); src2.moveTo(folderResource2); Assert.assertTrue(folderResource.isDirectory()); Assert.assertTrue(folderResource.exists()); Assert.assertTrue(src.exists()); Assert.assertTrue(folderResource2.isDirectory()); Assert.assertTrue(folderResource2.exists()); Assert.assertTrue(src2.exists()); folderResource.delete(true); Assert.assertTrue(!folderResource.exists()); Assert.assertTrue(!file.exists()); Assert.assertTrue(!folderResource2.exists()); Assert.assertTrue(!file2.exists()); }
@Test public void testMoveDirectoryResourceToDirectory() throws IOException { File folder = OperatingSystemUtils.createTempDir(); folder.deleteOnExit(); folder.mkdir(); File folder2 = OperatingSystemUtils.createTempDir(); folder2.deleteOnExit(); folder2.mkdir(); DirectoryResource folderResource = resourceFactory.create(DirectoryResource.class, folder); DirectoryResource folderResource2 = resourceFactory.create(DirectoryResource.class, folder2); folderResource.moveTo(folderResource2); String absolutePathDirMoved = folderResource.getUnderlyingResourceObject().getAbsolutePath(); Assert.assertEquals( absolutePathDirMoved, folder2.getAbsolutePath() + File.separator + folder.getName()); Assert.assertTrue(folderResource.isDirectory()); Assert.assertTrue(folderResource.exists()); }
/* * method to load the dictionaries in the given directory and return the HashMap */ private HashMap<String, HashSet<String>> loadDictionaries(DirectoryResource dr) { HashMap<String, HashSet<String>> dictMap = new HashMap<String, HashSet<String>>(); for (File f : dr.selectedFiles()) { System.out.println("loading dictionary: " + f.getName()); FileResource fr = new FileResource(f); HashSet<String> dict = readDictionary(fr); dictMap.put(f.getName(), dict); } return dictMap; }