/** * Delete inactive contents. */ public void deleteInactiveContent() throws PatchingException { List<File> dirs = getInactiveHistory(); if (!dirs.isEmpty()) { for (File dir : dirs) { deleteDir(dir, ALL); } } dirs = getInactiveOverlays(); if (!dirs.isEmpty()) { for (File dir : dirs) { deleteDir(dir, ALL); } } }
/** * Delete inactive contents. */ public void deleteInactiveContent() throws PatchingException { List<File> dirs = getInactiveHistory(); if (!dirs.isEmpty()) { for (File dir : dirs) { deleteDir(dir, ALL); } } dirs = getInactiveOverlays(); if (!dirs.isEmpty()) { for (File dir : dirs) { deleteDir(dir, ALL); } } }
protected void assertNoGarbage() throws Exception { final PatchingGarbageLocator garbageLocator = PatchingGarbageLocator.getIninitialized(loadInstallationManager().getDefaultIdentity()); List<File> inactiveHistory = garbageLocator.getInactiveHistory(); assertTrue(inactiveHistory.toString(), inactiveHistory.isEmpty()); assertTrue(garbageLocator.getInactiveOverlays().toString(), garbageLocator.getInactiveOverlays().isEmpty()); }
@Test public void testRemovedCPRollbackXml() throws Exception { installOneOffCpOneOff(); removeRollbackXml(CP_1_ID); final PatchingGarbageLocator garbageLocator = PatchingGarbageLocator.getIninitialized(updateInstallationManager().getDefaultIdentity()); final List<File> inactiveHistory = garbageLocator.getInactiveHistory(); assertEquals(1, inactiveHistory.size()); assertEquals(getExpectedHistoryDir(ONE_OFF_1_ID), inactiveHistory.get(0).getAbsolutePath()); final List<File> inactiveOverlays = garbageLocator.getInactiveOverlays(); assertEquals(1, inactiveOverlays.size()); assertEquals(getExpectedOverlayDir("base", ONE_OFF_1_ID), inactiveOverlays.get(0).getAbsolutePath()); }
@Test public void testUnpatchedWitGarbage() throws Exception { createDefaultBuilder("layer2", "layer1", "base"); final List<String> historyGarbage = Arrays.asList(new String[]{getExpectedHistoryDir("CP1"), getExpectedHistoryDir("CP2")}); for(int i = 0; i < historyGarbage.size(); ++i) { new File(historyGarbage.get(i)).mkdirs(); } final List<String> overlayGarbage = Arrays.asList(new String[]{getExpectedOverlayDir("layer2", "CP2"), getExpectedOverlayDir("layer1", "CP2"), getExpectedOverlayDir("base", "CP1")}); for(int i = 0; i < overlayGarbage.size(); ++i) { new File(overlayGarbage.get(i)).mkdirs(); } PatchingGarbageLocator garbageLocator = PatchingGarbageLocator.getIninitialized(loadInstallationManager().getDefaultIdentity()); final List<File> inactiveHistory = garbageLocator.getInactiveHistory(); assertEqualPaths(historyGarbage, inactiveHistory); final List<File> inactiveOverlays = garbageLocator.getInactiveOverlays(); assertEqualPaths(overlayGarbage, inactiveOverlays); garbageLocator.deleteInactiveContent(); garbageLocator.reset(); assertTrue(garbageLocator.getInactiveHistory().isEmpty()); assertTrue(garbageLocator.getInactiveOverlays().isEmpty()); }
@Test public void testRemovedLastOneOffRollbackXml() throws Exception { installOneOffCpOneOff(); removeRollbackXml(ONE_OFF_2_ID); PatchingGarbageLocator garbageLocator = PatchingGarbageLocator.getIninitialized(updateInstallationManager().getDefaultIdentity()); final List<File> inactiveHistory = garbageLocator.getInactiveHistory(); List<String> inactivePaths = Arrays.asList(new String[] { getExpectedHistoryDir(ONE_OFF_1_ID) }); assertEqualPaths(inactivePaths, inactiveHistory); final List<File> inactiveOverlays = garbageLocator.getInactiveOverlays(); inactivePaths = Arrays.asList(new String[]{getExpectedOverlayDir("base", ONE_OFF_1_ID)}); assertEqualPaths(inactivePaths, inactiveOverlays); // test cleaning garbageLocator.deleteInactiveContent(); garbageLocator.reset(); assertTrue(garbageLocator.getInactiveHistory().isEmpty()); assertTrue(garbageLocator.getInactiveOverlays().isEmpty()); assertTrue(new File(getExpectedOverlayDir("base", ONE_OFF_2_ID)).exists()); }
final List<File> inactiveHistory = garbageLocator.getInactiveHistory(); List<String> inactivePaths = Arrays.asList(new String[]{getExpectedHistoryDir("CP1"), getExpectedHistoryDir("CP2")}); assertEqualPaths(inactivePaths, inactiveHistory); assertTrue(garbageLocator.getInactiveHistory().isEmpty()); assertTrue(garbageLocator.getInactiveOverlays().isEmpty());