From a51599b11a273af7bd7cc23fe0707c6d3ba1eab6 Mon Sep 17 00:00:00 2001 From: Tobias Pietzsch <tobias.pietzsch@gmail.com> Date: Fri, 13 Feb 2015 01:25:25 +0100 Subject: [PATCH] add "-t" command line option to set thumbnail directory --- src/main/java/bdv/server/BigDataServer.java | 26 ++++++++++++++++----- src/main/java/bdv/server/CellHandler.java | 3 +-- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main/java/bdv/server/BigDataServer.java b/src/main/java/bdv/server/BigDataServer.java index f1b6016..269030f 100644 --- a/src/main/java/bdv/server/BigDataServer.java +++ b/src/main/java/bdv/server/BigDataServer.java @@ -40,6 +40,8 @@ import java.util.Map.Entry; * per line. Each line is formatted as "NAME <TAB> XML". * -p <PORT> Listening port. (default: 8080) * -s <HOSTNAME> Hostname of the server. + * -t <DIRECTORY> Directory to store thumbnails. (new temporary directory + * by default.) * -m enable statistics and manager context. EXPERIMENTAL! * </pre> * @@ -65,8 +67,9 @@ public class BigDataServer { hostname = "localhost"; } + final String thumbnailDirectory = null; final boolean enableManagerContext = false; - return new Parameters( port, hostname, new HashMap< String, String >(), enableManagerContext ); + return new Parameters( port, hostname, new HashMap< String, String >(), thumbnailDirectory, enableManagerContext ); } public static void main( final String[] args ) throws Exception @@ -133,13 +136,16 @@ public class BigDataServer */ private final Map< String, String > datasetNameToXml; + private final String thumbnailDirectory; + private final boolean enableManagerContext; - Parameters( final int port, final String hostname, final Map< String, String > datasetNameToXml, final boolean enableManagerContext ) + Parameters( final int port, final String hostname, final Map< String, String > datasetNameToXml, final String thumbnailDirectory, final boolean enableManagerContext ) { this.port = port; this.hostname = hostname; this.datasetNameToXml = datasetNameToXml; + this.thumbnailDirectory = thumbnailDirectory; this.enableManagerContext = enableManagerContext; } @@ -155,7 +161,7 @@ public class BigDataServer public String getThumbnailDirectory() { - return null; + return thumbnailDirectory; } /** @@ -205,6 +211,12 @@ public class BigDataServer .withArgName( "FILE" ) .create( "d" ) ); + options.addOption( OptionBuilder + .withDescription( "Directory to store thumbnails. (new temporary directory by default.)" ) + .hasArg() + .withArgName( "DIRECTORY" ) + .create( "t" ) ); + if ( Constants.ENABLE_EXPERIMENTAL_FEATURES ) { options.addOption( OptionBuilder @@ -222,8 +234,10 @@ public class BigDataServer final int port = Integer.parseInt( portString ); // Getting server name option - final String serverString = cmd.getOptionValue( "s", defaultParameters.getHostname() ); - final String serverName = serverString; + final String serverName = cmd.getOptionValue( "s", defaultParameters.getHostname() ); + + // Getting thumbnail directory option + final String thumbnailDirectory = cmd.getOptionValue( "t", defaultParameters.getThumbnailDirectory() ); final HashMap< String, String > datasets = new HashMap< String, String >( defaultParameters.getDatasets() ); @@ -280,7 +294,7 @@ public class BigDataServer if ( datasets.isEmpty() ) throw new IllegalArgumentException( "Dataset list is empty." ); - return new Parameters( port, serverName, datasets, enableManagerContext ); + return new Parameters( port, serverName, datasets, thumbnailDirectory, enableManagerContext ); } catch ( final ParseException | IllegalArgumentException e ) { diff --git a/src/main/java/bdv/server/CellHandler.java b/src/main/java/bdv/server/CellHandler.java index 6125bc9..a3fe4df 100644 --- a/src/main/java/bdv/server/CellHandler.java +++ b/src/main/java/bdv/server/CellHandler.java @@ -277,8 +277,7 @@ public class CellHandler extends ContextHandler { final String thumbnailFileName = thumbnailsDirectory + "/" + datasetName + ".png"; final File thumbnailFile = new File( thumbnailFileName ); - if ( !thumbnailFile.isFile() ) // do not recreate thumbnail if it - // already exists + if ( !thumbnailFile.isFile() ) // do not recreate thumbnail if it already exists { final BufferedImage bi = ThumbnailGenerator.makeThumbnail( spimData, baseFilename, Constants.THUMBNAIL_WIDTH, Constants.THUMBNAIL_HEIGHT ); try -- GitLab