From fc44eaa03af14f9721b3b5c29f23314b12fb3c0f Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Wed, 21 Jan 2015 10:23:13 +0000
Subject: [PATCH] SubCommand.java: Added toString().
---
opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommand.java | 52 ++++++++++++++++++++++++----------------------------
1 files changed, 24 insertions(+), 28 deletions(-)
diff --git a/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommand.java b/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommand.java
index 467cc08..d27e85a 100644
--- a/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommand.java
+++ b/opendj-cli/src/main/java/com/forgerock/opendj/cli/SubCommand.java
@@ -22,48 +22,36 @@
*
*
* Copyright 2006-2008 Sun Microsystems, Inc.
- * Portions Copyright 2014 ForgeRock AS
+ * Portions Copyright 2014-2015 ForgeRock AS
*/
package com.forgerock.opendj.cli;
-import static com.forgerock.opendj.util.StaticUtils.toLowerCase;
import static com.forgerock.opendj.cli.CliMessages.*;
-
-import org.forgerock.i18n.LocalizableMessage;
+import static com.forgerock.opendj.util.StaticUtils.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
+import org.forgerock.i18n.LocalizableMessage;
+
/**
* This class defines a data structure for holding information about a subcommand that may be used with the subcommand
* argument parser. The subcommand has a name, a description, and a set of arguments.
*/
public class SubCommand {
- /**
- * Indicates whether this subCommand should be hidden in the usage
- * information.
- */
+ /** Indicates whether this subCommand should be hidden in the usage information. */
private boolean isHidden;
- /**
- * The mapping between the short argument IDs and the arguments for this
- * subcommand.
- */
+ /** The mapping between the short argument IDs and the arguments for this subcommand. */
private HashMap<Character, Argument> shortIDMap;
-
- /**
- * The mapping between the long argument IDs and the arguments for this
- * subcommand.
- */
+ /** The mapping between the long argument IDs and the arguments for this subcommand. */
private HashMap<String, Argument> longIDMap;
-
/** The list of arguments associated with this subcommand. */
private LinkedList<Argument> arguments;
/** The description for this subcommand. */
private LocalizableMessage description;
-
/** The name of this subcommand. */
private String name;
@@ -76,16 +64,9 @@
*/
private boolean allowsTrailingArguments;
- /**
- * The maximum number of unnamed trailing arguments that may be
- * provided.
- */
+ /** The maximum number of unnamed trailing arguments that may be provided. */
private int maxTrailingArguments;
-
- /**
- * The minimum number of unnamed trailing arguments that may be
- * provided.
- */
+ /** The minimum number of unnamed trailing arguments that may be provided. */
private int minTrailingArguments;
/**
@@ -370,4 +351,19 @@
public void setHidden(boolean isHidden) {
this.isHidden = isHidden;
}
+
+ /** {@inheritDoc} */
+ @Override
+ public String toString() {
+ final StringBuilder sb = new StringBuilder();
+ sb.append(getClass().getSimpleName()).append("(").append("name=").append(this.name);
+ if (!longIDMap.isEmpty()) {
+ sb.append(", longIDs=").append(longIDMap.keySet());
+ }
+ if (!shortIDMap.isEmpty()) {
+ sb.append(", shortIDs=").append(shortIDMap.keySet());
+ }
+ sb.append(")");
+ return sb.toString();
+ }
}
--
Gitblit v1.10.0