[slf4j-dev] svn commit: r988 - slf4j/trunk/slf4j-migrator/src/main/java/org/slf4j/migrator/internal
ceki at slf4j.org
ceki at slf4j.org
Tue Feb 26 17:56:58 CET 2008
Author: ceki
Date: Tue Feb 26 17:56:58 2008
New Revision: 988
Modified:
slf4j/trunk/slf4j-migrator/src/main/java/org/slf4j/migrator/internal/ProgressListenerImpl.java
Log:
- limit the number of screen updates to eliminate screen flicker
Modified: slf4j/trunk/slf4j-migrator/src/main/java/org/slf4j/migrator/internal/ProgressListenerImpl.java
==============================================================================
--- slf4j/trunk/slf4j-migrator/src/main/java/org/slf4j/migrator/internal/ProgressListenerImpl.java (original)
+++ slf4j/trunk/slf4j-migrator/src/main/java/org/slf4j/migrator/internal/ProgressListenerImpl.java Tue Feb 26 17:56:58 2008
@@ -32,12 +32,18 @@
public class ProgressListenerImpl implements ProgressListener {
static final int TARGET_FILE_LENGTH = 85;
+ static final int UPDATE_THRESHOLD = 100;
+
int addFileCount = 0;
int scanFileCount = 0;
int inplaceConversionCount = 0;
final MigratorFrame frame;
Abbreviator abbr;
+
+ long lastUpdate = 0;
+
+
public ProgressListenerImpl(File projectFolder, MigratorFrame frame) {
this.frame = frame;
@@ -49,7 +55,19 @@
frame.disableInput();
}
+ boolean isTooSoon() {
+ long now = System.currentTimeMillis();
+ if(now-lastUpdate < UPDATE_THRESHOLD) {
+ return true;
+ } else {
+ lastUpdate = now;
+ return false;
+ }
+ }
+
public void onDirectory(File file) {
+ if(isTooSoon()) return;
+
String abbreviatedName = getShortName(file);
frame.otherLabel.setText("<html><p>Searching folder [" + abbreviatedName
+ "]<p>Found " + addFileCount + " java files to scan.</html>");
@@ -74,9 +92,11 @@
}
public void onFileScan(File file) {
- String abbreviatedName = getShortName(file);
+
scanFileCount++;
-
+ if(isTooSoon()) return;
+ String abbreviatedName = getShortName(file);
+
frame.otherLabel.setText("<html><p>Scanning file [" + abbreviatedName
+ "]<p></html>");
// File + scanFileCount + " out of "+ addFileCount+" files to scan."+
More information about the slf4j-dev
mailing list