From 02813298a5ed78af9d2da3d88f9710f73890a8c7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Euzenat?= <Jerome.Euzenat@inria.fr>
Date: Tue, 11 Nov 2014 17:47:40 +0000
Subject: [PATCH] - improved parameter control (output directory)

---
 src/fr/inrialpes/exmo/align/cli/GroupAggreg.java | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/fr/inrialpes/exmo/align/cli/GroupAggreg.java b/src/fr/inrialpes/exmo/align/cli/GroupAggreg.java
index 86df4986..92fe4b0a 100644
--- a/src/fr/inrialpes/exmo/align/cli/GroupAggreg.java
+++ b/src/fr/inrialpes/exmo/align/cli/GroupAggreg.java
@@ -151,6 +151,14 @@ public class GroupAggreg extends CommonCLI {
 	    System.exit( -1 );
 	}
 
+	// check that dirName exist and is writable
+	File outDir = new File( dirName );
+	if ( !outDir.isDirectory() || !outDir.canWrite() ) {
+	    logger.error( "Directory {} must exist and be writable", dirName );
+	    throw new AlignmentException( "Cannot output to "+dirName );
+	}
+
+	// Run it
 	iterateDirectories();
     }
 
@@ -215,9 +223,10 @@ public class GroupAggreg extends CommonCLI {
     }
 
     /**
-     * This does not only print the results but compute the average as well
+     * Print the aggregated alignment, it is not void...
      */
     public void print( Alignment al, String outputfilename ) {
+	if ( al == null ) return;
 	PrintWriter writer = null;
 	try {
 	    writer = new PrintWriter (
-- 
GitLab