summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/Parameters.java')
-rw-r--r--src/Parameters.java135
1 files changed, 135 insertions, 0 deletions
diff --git a/src/Parameters.java b/src/Parameters.java
new file mode 100644
index 0000000..d323908
--- /dev/null
+++ b/src/Parameters.java
@@ -0,0 +1,135 @@
+public class Parameters
+{
+ private static String output_dir;
+ private static String log_filename, known_classes_filename, groups_filename;
+ private static int threads;
+
+ static
+ {
+ output_dir = "../output/";
+ log_filename = "../last_log";
+ known_classes_filename = "../data/KNOWN_CLASSES";
+ groups_filename = "../data/GROUPS";
+ threads = 8;
+ }
+
+ private Parameters () {} /** utility class **/
+
+ public static boolean set_parameters (final String[] args)
+ {
+ int i;
+
+ for (i = 0; i < args.length; i++)
+ {
+ if(args[i].equals("--outputs"))
+ {
+ i++;
+ output_dir = args[i];
+ }
+ else if(args[i].equals("--log"))
+ {
+ i++;
+ log_filename = args[i];
+ }
+ else if(args[i].equals("--classes"))
+ {
+ i++;
+ known_classes_filename = args[i];
+ }
+ else if(args[i].equals("--groups"))
+ {
+ i++;
+ groups_filename = args[i];
+ }
+ else if(args[i].equals("--threads"))
+ {
+ i++;
+ threads = Integer.parseInt(args[i]);
+ }
+ else if(args[i].equals("--help") || args[i].equals("-h"))
+ {
+ usage();
+
+ return false;
+ }
+ else
+ {
+ System.err.println("[W] Unknown parameter:" + args[i]);
+ }
+ }
+
+ return true;
+ }
+
+ private static void usage ()
+ {
+ final StringBuilder sb;
+
+ sb = new StringBuilder();
+
+ sb.append
+ (
+ ").\n\"--outputs directory\": where the 'ICS' files are written "
+ + "(default: "
+ );
+ sb.append(output_dir);
+
+ sb.append
+ (
+ ").\n\"--log filename\": where the errors are reported (default: "
+ );
+ sb.append(log_filename);
+
+ sb.append
+ (
+ ").\n\"--classes filename\": file containing the known classes "
+ + "(default: "
+ );
+ sb.append(known_classes_filename);
+
+ sb.append
+ (
+ ").\n\"--groups filename\": file containing the groups (default: "
+ );
+ sb.append(groups_filename);
+
+ sb.append
+ (
+ ").\n\"--threads number\": maximum number of threads running at "
+ + "any time (default: "
+ );
+ sb.append(threads);
+
+ sb.append
+ (
+ ").\n\"--help\": prints this instead of converting (alias: \"-h\")."
+ );
+
+ System.out.println(sb.toString());
+ }
+
+ public static String get_output_directory ()
+ {
+ return output_dir;
+ }
+
+ public static String get_log_filename ()
+ {
+ return log_filename;
+ }
+
+ public static String get_known_classes_filename ()
+ {
+ return known_classes_filename;
+ }
+
+ public static String get_groups_filename ()
+ {
+ return groups_filename;
+ }
+
+ public static int get_max_threads ()
+ {
+ return threads;
+ }
+}