mirror of
https://github.com/mitb-archive/filebot
synced 2024-08-13 17:03:45 -04:00
* improved utility classes
* nested temporary folders
This commit is contained in:
parent
683c5e4cee
commit
ee6dc82d50
@ -6,6 +6,7 @@ import java.awt.Dimension;
|
|||||||
import java.awt.Point;
|
import java.awt.Point;
|
||||||
import java.awt.Window;
|
import java.awt.Window;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.io.FileFilter;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
@ -112,4 +113,22 @@ public class FileBotUtil {
|
|||||||
|
|
||||||
return new Point(p.x + d.width / 4, p.y + d.height / 7);
|
return new Point(p.x + d.width / 4, p.y + d.height / 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final FileFilter FOLDERS_ONLY = new FileFilter() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean accept(File file) {
|
||||||
|
return file.isDirectory();
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
public static final FileFilter FILES_ONLY = new FileFilter() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean accept(File file) {
|
||||||
|
return file.isFile();
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -3,11 +3,11 @@ package net.sourceforge.filebot.ui.panel.analyze;
|
|||||||
|
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileFilter;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.swing.tree.DefaultMutableTreeNode;
|
import javax.swing.tree.DefaultMutableTreeNode;
|
||||||
|
|
||||||
|
import net.sourceforge.filebot.FileBotUtil;
|
||||||
import net.sourceforge.filebot.ui.transferablepolicies.BackgroundFileTransferablePolicy;
|
import net.sourceforge.filebot.ui.transferablepolicies.BackgroundFileTransferablePolicy;
|
||||||
|
|
||||||
|
|
||||||
@ -56,12 +56,12 @@ class FileTreeTransferPolicy extends BackgroundFileTransferablePolicy<DefaultMut
|
|||||||
|
|
||||||
if (file.isDirectory() && !Thread.currentThread().isInterrupted()) {
|
if (file.isDirectory() && !Thread.currentThread().isInterrupted()) {
|
||||||
// run through folders first
|
// run through folders first
|
||||||
for (File f : file.listFiles(FOLDER_FILTER)) {
|
for (File f : file.listFiles(FileBotUtil.FOLDERS_ONLY)) {
|
||||||
node.add(getTree(f));
|
node.add(getTree(f));
|
||||||
}
|
}
|
||||||
|
|
||||||
// then files
|
// then files
|
||||||
for (File f : file.listFiles(FILE_FILTER)) {
|
for (File f : file.listFiles(FileBotUtil.FILES_ONLY)) {
|
||||||
node.add(getTree(f));
|
node.add(getTree(f));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -75,22 +75,4 @@ class FileTreeTransferPolicy extends BackgroundFileTransferablePolicy<DefaultMut
|
|||||||
return "files and folders";
|
return "files and folders";
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final FileFilter FOLDER_FILTER = new FileFilter() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean accept(File file) {
|
|
||||||
return file.isDirectory();
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
private static final FileFilter FILE_FILTER = new FileFilter() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean accept(File file) {
|
|
||||||
return file.isFile();
|
|
||||||
}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,9 @@ package net.sourceforge.tuned;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
|
||||||
@ -56,8 +58,9 @@ public class TemporaryFolder {
|
|||||||
|
|
||||||
|
|
||||||
public File createFile(String name) throws IOException {
|
public File createFile(String name) throws IOException {
|
||||||
if (!root.exists())
|
if (!root.exists()) {
|
||||||
root.mkdir();
|
root.mkdir();
|
||||||
|
}
|
||||||
|
|
||||||
File file = new File(root, name);
|
File file = new File(root, name);
|
||||||
file.createNewFile();
|
file.createNewFile();
|
||||||
@ -75,6 +78,48 @@ public class TemporaryFolder {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public File getFolder() {
|
||||||
|
return root;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public TemporaryFolder createFolder(String name) {
|
||||||
|
if (!root.exists()) {
|
||||||
|
root.mkdir();
|
||||||
|
}
|
||||||
|
|
||||||
|
TemporaryFolder folder = new TemporaryFolder(new File(root, name));
|
||||||
|
|
||||||
|
folder.root.mkdir();
|
||||||
|
|
||||||
|
return folder;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public List<File> list(boolean recursive) {
|
||||||
|
List<File> list = new ArrayList<File>();
|
||||||
|
|
||||||
|
list(root, list, recursive);
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void list(File file, List<File> list, boolean recursive) {
|
||||||
|
if (file.isDirectory()) {
|
||||||
|
for (File entry : file.listFiles()) {
|
||||||
|
if (entry.isDirectory()) {
|
||||||
|
if (recursive) {
|
||||||
|
list(entry, list, recursive);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
list.add(entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void delete() {
|
public void delete() {
|
||||||
delete(root);
|
delete(root);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user