From 98a7494fc691c5a5af0bfac786fad827af567746 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Tue, 03 Feb 2015 11:02:53 +0000
Subject: [PATCH] OPENDJ-1242 (CR-5940) Enable dsconfig to generate doc for properties changed through subcommand options

---
 opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommandArgumentParser.java |   17 ++++++++++++++---
 1 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommandArgumentParser.java b/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommandArgumentParser.java
index d482570..5931b24 100644
--- a/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommandArgumentParser.java
+++ b/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommandArgumentParser.java
@@ -75,6 +75,7 @@
 
     /**The subcommand requested by the user as part of the command-line arguments.     */
     private SubCommand subCommand;
+    private SubCommandUsageHandler subCommandUsageHandler;
 
     /**
      * Creates a new instance of this subcommand argument parser with no arguments.
@@ -416,6 +417,15 @@
     }
 
     /**
+     * Sets the sub-command usage handler which will be used to display the usage information.
+     *
+     * @param subCommandUsageHandler the sub-command usage handler
+     */
+    public void setUsageHandler(SubCommandUsageHandler subCommandUsageHandler) {
+        this.subCommandUsageHandler = subCommandUsageHandler;
+    }
+
+    /**
      * Parses the provided set of arguments and updates the information associated with this parser accordingly. Default
      * values for unspecified arguments may be read from the specified properties if any are provided.
      *
@@ -1193,9 +1203,10 @@
                 }
                 sb.append("</option></term>").append(EOL);
                 sb.append("   <listitem>").append(EOL);
-                sb.append("    <para>");
-                sb.append(a.getDescription());
-                sb.append("</para>").append(EOL);
+                sb.append("    <para>").append(a.getDescription()).append("</para>").append(EOL);
+                if (subCommandUsageHandler != null) {
+                    subCommandUsageHandler.appendUsage(sb, sc, longID);
+                }
                 sb.append("   </listitem>").append(EOL);
                 sb.append("  </varlistentry>").append(EOL);
             }

--
Gitblit v1.10.0