diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-04-09 11:48:45 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-04-09 11:48:45 +0200 |
| commit | a399f7cb69c94f02a7942147a9c4766a0d5152e3 (patch) | |
| tree | fc8a2154f9042a262303583e8f714f1734f6474a | |
| parent | 11e7a9aaed7c22ec93a791ea752e159b4b120e4e (diff) | |
BadArgumentsException - more specific exception thrown by readC2KArgs
when the arguments are wrong.
| -rw-r--r-- | src/main/java/com/c2kernel/process/AbstractMain.java | 17 | ||||
| -rw-r--r-- | src/main/java/com/c2kernel/process/resource/BadArgumentsException.java | 17 | ||||
| -rw-r--r-- | src/test/java/LauncherTest.java | 9 |
3 files changed, 31 insertions, 12 deletions
diff --git a/src/main/java/com/c2kernel/process/AbstractMain.java b/src/main/java/com/c2kernel/process/AbstractMain.java index b594c1a..e241ee2 100644 --- a/src/main/java/com/c2kernel/process/AbstractMain.java +++ b/src/main/java/com/c2kernel/process/AbstractMain.java @@ -17,6 +17,7 @@ import java.io.PrintStream; import java.util.Enumeration;
import java.util.Properties;
+import com.c2kernel.process.resource.BadArgumentsException;
import com.c2kernel.utils.FileStringUtility;
import com.c2kernel.utils.Logger;
@@ -33,7 +34,7 @@ abstract public class AbstractMain /**************************************************************************
* reading and setting input paramaters
**************************************************************************/
- public static Properties readC2KArgs( String[] args ) throws Exception {
+ public static Properties readC2KArgs( String[] args ) throws BadArgumentsException {
Properties c2kProps;
Properties argProps = new Properties();
int logLevel = 0;
@@ -44,7 +45,7 @@ abstract public class AbstractMain if (args[i].startsWith("-") && args[i].length()>1) {
String key = args[i].substring(1);
if (argProps.containsKey(key))
- throw new Exception("Argument "+args[i]+" given twice");
+ throw new BadArgumentsException("Argument "+args[i]+" given twice");
String value = "";
if (!args[i+1].startsWith("-"))
value = args[++i];
@@ -52,7 +53,7 @@ abstract public class AbstractMain i++;
}
else
- throw new Exception("Bad argument: "+args[i]);
+ throw new BadArgumentsException("Bad argument: "+args[i]);
}
@@ -61,7 +62,7 @@ abstract public class AbstractMain logStream = new PrintStream(new FileOutputStream(argProps.getProperty("logFile"), true));
} catch (FileNotFoundException e) {
e.printStackTrace();
- throw new Exception("Logfile "+argProps.getProperty("logFile")+" cannot be created");
+ throw new BadArgumentsException("Logfile "+argProps.getProperty("logFile")+" cannot be created");
}
// Set up log stream
@@ -78,10 +79,10 @@ abstract public class AbstractMain String configPath = argProps.getProperty("config");
if (configPath == null)
- throw new Exception("Config file not specified");
+ throw new BadArgumentsException("Config file not specified");
if (!new File(configPath).exists())
- throw new Exception("Config file "+configPath+" not found");
+ throw new BadArgumentsException("Config file "+configPath+" not found");
else
Logger.msg(0, "Config file: "+configPath);
@@ -91,10 +92,10 @@ abstract public class AbstractMain String connectFile = c2kProps.getProperty("connect");
if (connectFile == null)
- throw new Exception("Connect file not specified");
+ throw new BadArgumentsException("Connect file not specified");
if (!new File(connectFile).exists())
- throw new Exception("Connect file "+connectFile+" not found");
+ throw new BadArgumentsException("Connect file "+connectFile+" not found");
else
Logger.msg(0, "Connect file: "+connectFile);
diff --git a/src/main/java/com/c2kernel/process/resource/BadArgumentsException.java b/src/main/java/com/c2kernel/process/resource/BadArgumentsException.java new file mode 100644 index 0000000..c7fe7cf --- /dev/null +++ b/src/main/java/com/c2kernel/process/resource/BadArgumentsException.java @@ -0,0 +1,17 @@ +package com.c2kernel.process.resource;
+
+public class BadArgumentsException extends Exception {
+
+ public BadArgumentsException() {
+ super();
+ }
+
+ public BadArgumentsException(String message) {
+ super(message);
+ }
+
+ public BadArgumentsException(Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/src/test/java/LauncherTest.java b/src/test/java/LauncherTest.java index 39c2b6e..8abba93 100644 --- a/src/test/java/LauncherTest.java +++ b/src/test/java/LauncherTest.java @@ -1,6 +1,7 @@ import java.util.Properties;
import com.c2kernel.process.AbstractMain;
+import com.c2kernel.process.resource.BadArgumentsException;
import com.c2kernel.utils.Logger;
@@ -40,7 +41,7 @@ public class LauncherTest { try {
props = AbstractMain.readC2KArgs(args);
throw new Exception("Invalid connect file not detected");
- } catch (Exception ex) { }
+ } catch (BadArgumentsException ex) { }
}
public void testWrongConnectFileName() throws Exception {
@@ -49,7 +50,7 @@ public class LauncherTest { try {
props = AbstractMain.readC2KArgs(args);
throw new Exception("Invalid connect file not detected");
- } catch (Exception ex) { }
+ } catch (BadArgumentsException ex) { }
}
public void testMissingConnectArg() throws Exception {
@@ -59,7 +60,7 @@ public class LauncherTest { try {
props = AbstractMain.readC2KArgs(args);
throw new Exception("Missing connect file not detected");
- } catch (Exception ex) { }
+ } catch (BadArgumentsException ex) { }
}
public void testMissingConfigArg() throws Exception {
@@ -69,6 +70,6 @@ public class LauncherTest { try {
props = AbstractMain.readC2KArgs(args);
throw new Exception("Missing config file not detected");
- } catch (Exception ex) { }
+ } catch (BadArgumentsException ex) { }
}
}
|
