private static File createTempDir(String prefix, String suffix, File root) throws IOException { for (int i = 0; i < RETRIES; i++) { final File f = new File(root, createTempName(prefix, suffix)); if (f.mkdirs()) { if (f.isDirectory()&&f.getParent()!=null){ f.delete(); } return f; } } throw VFSMessages.MESSAGES.couldNotCreateDirectoryForRoot( root, prefix, suffix, RETRIES); }
/** * Create a temp directory, into which temporary files may be placed. * * @param originalName the original file name * @return the temp directory * @throws IOException for any error */ public TempDir createTempDir(String originalName) throws IOException { if (!open.get()) { throw VFSMessages.MESSAGES.tempFileProviderClosed(); } final String name = createTempName(originalName + "-", ""); final File f = new File(providerRoot, name); for (int i = 0; i < RETRIES; i++) { if (f.mkdirs()) { return new TempDir(this, f); } } throw VFSMessages.MESSAGES.couldNotCreateDirectory(originalName,RETRIES); }
if (possiblyExistingProviderRoot.exists()) { final File toBeDeletedProviderRoot = new File(TMP_ROOT, createTempName(providerType + "-to-be-deleted-", "")); final boolean renamed = possiblyExistingProviderRoot.renameTo(toBeDeletedProviderRoot); if (!renamed) {