diff options
Diffstat (limited to 'src/main/java/org/openslx/imagemaster/serverconnection')
| -rw-r--r-- | src/main/java/org/openslx/imagemaster/serverconnection/CrcScheduler.java | 9 | ||||
| -rw-r--r-- | src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java | 15 |
2 files changed, 13 insertions, 11 deletions
diff --git a/src/main/java/org/openslx/imagemaster/serverconnection/CrcScheduler.java b/src/main/java/org/openslx/imagemaster/serverconnection/CrcScheduler.java index ff1374c..031a807 100644 --- a/src/main/java/org/openslx/imagemaster/serverconnection/CrcScheduler.java +++ b/src/main/java/org/openslx/imagemaster/serverconnection/CrcScheduler.java @@ -12,7 +12,7 @@ import org.openslx.imagemaster.crcchecker.CrcChecker; /** * Class to schedule CRC checks. - * CRC checks of uploading images are so done parallel to the connection. + * CRC checks of uploading images are so done parallel to the connection. */ public class CrcScheduler extends TimerTask { @@ -22,9 +22,10 @@ public class CrcScheduler extends TimerTask @Override public void run() { - log.debug( "Starting checks..." ); List<UploadingImage> list = ImageProcessor.getImagesToCheck(); - log.debug( list ); + if ( list == null || list.isEmpty() ) + return; + log.debug( "Starting checks: " + list ); Iterator<UploadingImage> iter = list.iterator(); // iterate over the uploading images that need to be checked while ( iter.hasNext() ) { @@ -71,7 +72,7 @@ public class CrcScheduler extends TimerTask Timer timer = new Timer( "CRCScheduler" ); // start now and fire every 60 s - timer.schedule( new CrcScheduler(), 0, Globals.getCrcSchedulingInterval() * 1000L ); + timer.schedule( new CrcScheduler(), 0, Globals.getCrcSchedulingInterval() * 1000L ); } } diff --git a/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java b/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java index 1f41be8..15de77b 100644 --- a/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java +++ b/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java @@ -3,7 +3,6 @@ package org.openslx.imagemaster.serverconnection; import java.io.File; import java.util.ArrayList; import java.util.Iterator; -import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -137,13 +136,15 @@ public class ImageProcessor public static List<UploadingImage> getImagesToCheck() { - List<UploadingImage> result = new LinkedList<>(); - Iterator<String> iter = imagesToCheck.iterator(); - log.debug( imagesToCheck ); - while ( iter.hasNext() ) { - result.add( uploadingImages.get( iter.next() ) ); + synchronized ( imagesToCheck ) { + if ( imagesToCheck.isEmpty() ) + return null; + List<UploadingImage> result = new ArrayList<>( imagesToCheck.size() ); + for ( String uuid : imagesToCheck ) { + result.add( uploadingImages.get( uuid ) ); + } + return result; } - return result; } public static List<Integer> getRequestedBlocks( String token ) |
