From 21d3c5a12b5fa5e002d0dc141a0add60f2f3138c Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Tue, 1 Jul 2014 23:09:48 +0200 Subject: Added TODOs, some minor cosmetic improvements --- .../openslx/imagemaster/serverconnection/ImageProcessor.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java/org/openslx/imagemaster/serverconnection') diff --git a/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java b/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java index d4ae717..f828633 100644 --- a/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java +++ b/src/main/java/org/openslx/imagemaster/serverconnection/ImageProcessor.java @@ -14,7 +14,7 @@ import org.openslx.imagemaster.util.RandomString; public class ImageProcessor { - private static Logger log = Logger.getLogger( ImageProcessor.class ); + private static final Logger log = Logger.getLogger( ImageProcessor.class ); /** * The amount of blocks that is return in UploadInfos (after request of satellite) @@ -41,7 +41,7 @@ public class ImageProcessor String uuid = imageData.uuid; - // check if image is already uploading + // check if image is already uploading TODO: what if two clients call this at the same time? if ( uploadingImages.containsKey( uuid ) ) { List missing = getMissingBlocks( uuid, AMOUNT ); if ( missing.isEmpty() ) { @@ -49,6 +49,9 @@ public class ImageProcessor uploadDone( uuid ); return new UploadInfos( token, missing ); } + // TODO: proper synchronization, interface is multi threaded. + // should synchronize operations on the map (use concurrent map) and then synchronize on the uploading image + // when handing the missing blocks etc... uploadingImages.get( uuid ).setLastSentBlocks( missing ); return new UploadInfos( uploadingImages.get( uuid ).getToken(), missing ); } @@ -67,6 +70,7 @@ public class ImageProcessor List missing = getMissingBlocks( uuid, AMOUNT ); if ( missing.isEmpty() ) { + // TODO: if this is empty, check if there are pendig blocks and if so, request them again uploadDone( uuid ); } uploadingImages.get( uuid ).setLastSentBlocks( missing ); @@ -110,7 +114,8 @@ public class ImageProcessor /** * Checks pending uploads in database and adds them to process list again. */ - public static void checkUploading() { + static + { List list = DbImage.getUploadingImages(); for (DbImage image : list) { // TODO: init updownloader class -- cgit v1.2.3-55-g7522