Possibility to provide classpath dir. Updated help and documentation.
[javainspect.git] / src / main / java / eu / svjatoslav / inspector / java / commandline / CommandlineConfiguration.java
index 5d4bf6f..a573a57 100644 (file)
@@ -10,19 +10,21 @@ public class CommandlineConfiguration {
     private NullParameter showDebug;
     public StringParameters whitelistGlob;
     public StringParameters blacklistGlob;
+    public StringParameters rootClasses;
+    public NullParameter showHelp;
     public TargetImageTypeParameter targetImageType;
     public NullParameter keepDotFile;
     public DirectoryParameter targetDirectory;
+    public DirectoryParameters classPaths;
     public final boolean configurationOk;
     public NullParameter hideOrphanedClasses;
+    Parser parser;
 
     public static final String DEFAULT_GRAPH_NAME = "graph";
 
     public CommandlineConfiguration(String[] args) {
-        Parser parser = buildCommandlineParameterParser();
+        parser = buildCommandlineParameterParser();
         configurationOk = parser.parse(args);
-        if (!configurationOk)
-            parser.showHelp();
     }
 
     public boolean isDebug() {
@@ -37,6 +39,11 @@ public class CommandlineConfiguration {
                 .mustExist()
                 .addAliases("-j");
 
+        classPaths = parser.add(
+                        new DirectoryParameters("Classpath directories"))
+                .mustExist()
+                .addAliases("-c");
+
         graphName = parser.add(
                 new StringParameter("Graph name. (default: \"" + DEFAULT_GRAPH_NAME + "\")", DEFAULT_GRAPH_NAME))
                 .addAliases("-n");
@@ -45,13 +52,16 @@ public class CommandlineConfiguration {
                 new NullParameter("Show debug info."))
                 .addAliases("--debug");
 
+        showHelp = parser.add(new NullParameter("Show commandline usage help."))
+                .addAliases("-h", "--help");
+
         keepDotFile = parser.add(
                 new NullParameter("Keep dot file."))
                 .addAliases("-k");
 
         hideOrphanedClasses = parser.add(
                 new NullParameter("Hide orphaned classes."))
-                .addAliases("-h");
+                .addAliases("-ho");
 
         whitelistGlob = parser.add(
                 new StringParameters("Whitelist glob(s)."))
@@ -61,6 +71,11 @@ public class CommandlineConfiguration {
                 new StringParameters("Blacklist glob(s)."))
                 .addAliases("-b");
 
+        rootClasses = parser.add(
+                        new StringParameters("root class(es)."))
+                .addAliases("-r");
+
+
         targetDirectory = parser.add(new DirectoryParameter("Target directory. " +
                 "Default is current directory.").mustExist())
                 .addAliases("-d");