From 8ef82ccef5a0835003f26d9f267840a122e54656 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Mon, 22 Oct 2007 14:31:23 +0000
Subject: [PATCH] Fix issue 1931: dsconfig : what are MODE syntax values ?
---
opendj-sdk/opends/src/server/org/opends/server/admin/PropertyDefinitionUsageBuilder.java | 10 ++++
opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/CreateSubCommandHandler.java | 16 ++++++-
opendj-sdk/opends/src/messages/messages/dsconfig.properties | 2
opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/HelpSubCommandHandler.java | 2
opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/PropertyValueEditor.java | 31 +++++++++++----
5 files changed, 46 insertions(+), 15 deletions(-)
diff --git a/opendj-sdk/opends/src/messages/messages/dsconfig.properties b/opendj-sdk/opends/src/messages/messages/dsconfig.properties
index 5dfdac8..10a46ac 100644
--- a/opendj-sdk/opends/src/messages/messages/dsconfig.properties
+++ b/opendj-sdk/opends/src/messages/messages/dsconfig.properties
@@ -321,7 +321,7 @@
INFO_VALUE_UNLIMITED_1293=unlimited
INFO_EDITOR_PROMPT_SELECT_VALUE_SINGLE_1294=Select a value for the "%s" property:
INFO_EDITOR_PROMPT_SELECT_VALUE_MULTI_1295=Select one or more values for the "%s" property:
-INFO_EDITOR_HEADING_SYNTAX_1296=Syntax: %s
+INFO_EDITOR_HEADING_SYNTAX_1296=Syntax:
INFO_EDITOR_HEADING_VALUES_SUMMARY_1297=The "%s" property has the following values:
INFO_EDITOR_PROMPT_SELECT_VALUES_ADD_1299=Select the values you wish to add:
INFO_EDITOR_PROMPT_SELECT_VALUES_REMOVE_1302=Select the values you wish to remove:
diff --git a/opendj-sdk/opends/src/server/org/opends/server/admin/PropertyDefinitionUsageBuilder.java b/opendj-sdk/opends/src/server/org/opends/server/admin/PropertyDefinitionUsageBuilder.java
index 99c6810..e39fc2d 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/admin/PropertyDefinitionUsageBuilder.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/admin/PropertyDefinitionUsageBuilder.java
@@ -318,7 +318,15 @@
@Override
public Message visitString(StringPropertyDefinition d, Void p) {
if (d.getPattern() != null) {
- return Message.raw(d.getPatternUsage());
+ if (isDetailed) {
+ MessageBuilder builder = new MessageBuilder();
+ builder.append(d.getPatternUsage());
+ builder.append(" - ");
+ builder.append(d.getPatternSynopsis());
+ return builder.toMessage();
+ } else {
+ return Message.raw(d.getPatternUsage());
+ }
} else {
return Message.raw("STRING");
}
diff --git a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/CreateSubCommandHandler.java b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/CreateSubCommandHandler.java
index 537d0ef..5575162 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/CreateSubCommandHandler.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/CreateSubCommandHandler.java
@@ -778,10 +778,20 @@
app.println(pd.getDescription(), 4);
}
- PropertyDefinitionUsageBuilder b = new PropertyDefinitionUsageBuilder(
- true);
+ PropertyDefinitionUsageBuilder b =
+ new PropertyDefinitionUsageBuilder(true);
+ TableBuilder builder = new TableBuilder();
+ builder.startRow();
+ builder.appendCell(INFO_EDITOR_HEADING_SYNTAX.get());
+ builder.appendCell(b.getUsage(pd));
+
+ TextTablePrinter printer = new TextTablePrinter(app.getErrorStream());
+ printer.setDisplayHeadings(false);
+ printer.setIndentWidth(4);
+ printer.setColumnWidth(1, 0);
+
app.println();
- app.println(INFO_EDITOR_HEADING_SYNTAX.get(b.getUsage(pd)), 4);
+ builder.print(printer);
app.println();
return app.readValidatedInput(INFO_DSCFG_CREATE_NAME_PROMPT_NAMING_CONT
diff --git a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/HelpSubCommandHandler.java b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/HelpSubCommandHandler.java
index 88b5e82..5c46e91 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/HelpSubCommandHandler.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/HelpSubCommandHandler.java
@@ -268,7 +268,7 @@
@Override
public Void visitString(StringPropertyDefinition d, PrintStream p) {
PropertyDefinitionUsageBuilder usageBuilder =
- new PropertyDefinitionUsageBuilder(true);
+ new PropertyDefinitionUsageBuilder(false);
TableBuilder builder = new TableBuilder();
builder.startRow();
diff --git a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/PropertyValueEditor.java b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/PropertyValueEditor.java
index e06a82c..eb7fc3d 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/PropertyValueEditor.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/tools/dsconfig/PropertyValueEditor.java
@@ -631,10 +631,8 @@
@Override
public <T> MenuResult<Void> visitUnknown(PropertyDefinition<T> d,
Void p) throws UnknownPropertyDefinitionException {
- PropertyDefinitionUsageBuilder b = new PropertyDefinitionUsageBuilder(
- true);
app.println();
- app.println(INFO_EDITOR_HEADING_SYNTAX.get(b.getUsage(d)), 4);
+ displayPropertySyntax(app, d);
// Set the new property value(s).
try {
@@ -1009,10 +1007,8 @@
@Override
public <T> MenuResult<Boolean> visitUnknown(final PropertyDefinition<T> d,
Void p) {
- PropertyDefinitionUsageBuilder b = new PropertyDefinitionUsageBuilder(
- true);
app.println();
- app.println(INFO_EDITOR_HEADING_SYNTAX.get(b.getUsage(d)), 4);
+ displayPropertySyntax(app, d);
final SortedSet<T> defaultValues = mo.getPropertyDefaultValues(d);
final SortedSet<T> oldValues = mo.getPropertyValues(d);
@@ -1781,10 +1777,8 @@
@Override
public <T> MenuResult<Boolean> visitUnknown(final PropertyDefinition<T> d,
Void p) {
- PropertyDefinitionUsageBuilder b = new PropertyDefinitionUsageBuilder(
- true);
app.println();
- app.println(INFO_EDITOR_HEADING_SYNTAX.get(b.getUsage(d)), 4);
+ displayPropertySyntax(app, d);
// Construct a menu of actions.
MenuBuilder<T> builder = new MenuBuilder<T>(app);
@@ -1961,6 +1955,25 @@
+ // Display a property's syntax.
+ private static <T> void displayPropertySyntax(ConsoleApplication app,
+ PropertyDefinition<T> d) throws IllegalArgumentException {
+ PropertyDefinitionUsageBuilder b = new PropertyDefinitionUsageBuilder(true);
+
+ TableBuilder builder = new TableBuilder();
+ builder.startRow();
+ builder.appendCell(INFO_EDITOR_HEADING_SYNTAX.get());
+ builder.appendCell(b.getUsage(d));
+
+ TextTablePrinter printer = new TextTablePrinter(app.getErrorStream());
+ printer.setDisplayHeadings(false);
+ printer.setIndentWidth(4);
+ printer.setColumnWidth(1, 0);
+ builder.print(printer);
+ }
+
+
+
// Display a table of property values.
private static <T> void displayPropertyValues(ConsoleApplication app,
PropertyDefinition<T> pd, Collection<T> values)
--
Gitblit v1.10.0