X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Ftodesbaum%2Fjsite%2Fgui%2FFileScanner.java;h=9135073858141e6b300cd15f44587bec927e8a0f;hb=9eafefbca8ddf6c20500a78789a474000cdfe457;hp=75dafe0e4cb0a88a90a4f461c382d35d8610aca6;hpb=0f8bec94396647d4f2135bf653b177e7c1eb8759;p=jSite.git diff --git a/src/main/java/de/todesbaum/jsite/gui/FileScanner.java b/src/main/java/de/todesbaum/jsite/gui/FileScanner.java index 75dafe0..9135073 100644 --- a/src/main/java/de/todesbaum/jsite/gui/FileScanner.java +++ b/src/main/java/de/todesbaum/jsite/gui/FileScanner.java @@ -1,5 +1,5 @@ /* - * jSite - FileScanner.java - Copyright © 2006â2012 David Roden + * jSite - FileScanner.java - Copyright © 2006â2014 David Roden * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -23,7 +23,6 @@ import java.io.FileFilter; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; -import java.io.OutputStream; import java.security.DigestOutputStream; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; @@ -34,9 +33,10 @@ import java.util.logging.Level; import java.util.logging.Logger; import net.pterodactylus.util.io.Closer; +import net.pterodactylus.util.io.NullOutputStream; +import net.pterodactylus.util.io.StreamCopier; import de.todesbaum.jsite.application.Project; import de.todesbaum.jsite.i18n.I18n; -import de.todesbaum.util.io.StreamCopier; /** * Scans the local path of a project anychronously and returns the list of found @@ -63,6 +63,9 @@ public class FileScanner implements Runnable { /** Wether there was an error. */ private boolean error = false; + /** The name of the last file scanned. */ + private String lastFilename; + /** * Creates a new file scanner for the given project. * @@ -103,6 +106,20 @@ public class FileScanner implements Runnable { } /** + * Returns the name of the last file scanned. + * + * @return The name of the last file scanned, or {@code null} if there was + * no file scanned yet + */ + public String getLastFilename() { + return lastFilename; + } + + public void startInBackground() { + new Thread(this).start(); + } + + /** * {@inheritDoc} *
* Scans all available files in the projectâs local path and emits an event
@@ -110,9 +127,11 @@ public class FileScanner implements Runnable {
*
* @see FileScannerListener#fileScannerFinished(FileScanner)
*/
+ @Override
public void run() {
files = new ArrayList