From 364fe09e4d5756c1480e036ff169b559c6965108 Mon Sep 17 00:00:00 2001
From: Matthew Swift <matthew.swift@forgerock.com>
Date: Thu, 01 Aug 2013 15:38:23 +0000
Subject: [PATCH] More minor enhancements to the upgrader so that it can be used for embedded upgrades.

---
 opends/src/server/org/opends/server/tools/upgrade/UpgradeCli.java |   42 +++++++++++++++++++++++++++---------------
 1 files changed, 27 insertions(+), 15 deletions(-)

diff --git a/opends/src/server/org/opends/server/tools/upgrade/UpgradeCli.java b/opends/src/server/org/opends/server/tools/upgrade/UpgradeCli.java
index d770642..da69d34 100644
--- a/opends/src/server/org/opends/server/tools/upgrade/UpgradeCli.java
+++ b/opends/src/server/org/opends/server/tools/upgrade/UpgradeCli.java
@@ -52,7 +52,6 @@
 import org.opends.messages.Message;
 import org.opends.server.extensions.ConfigFileHandler;
 import org.opends.server.tools.ClientException;
-import org.opends.server.util.BuildVersion;
 import org.opends.server.util.ServerConstants;
 import org.opends.server.util.StaticUtils;
 import org.opends.server.util.args.ArgumentException;
@@ -357,14 +356,11 @@
       UpgradeLog.initLogFileHandler();
 
       // Upgrade's context.
-      UpgradeContext context =
-          new UpgradeContext(BuildVersion.instanceVersion(), BuildVersion
-              .binaryVersion(), this);
-
-      context.setIgnoreErrorsMode(isIgnoreErrors());
-      context.setAcceptLicenseMode(isAcceptLicense());
-      context.setInteractiveMode(isInteractive());
-      context.setForceUpgradeMode(isForceUpgrade());
+      UpgradeContext context = new UpgradeContext(this)
+          .setIgnoreErrorsMode(isIgnoreErrors())
+          .setAcceptLicenseMode(isAcceptLicense())
+          .setInteractiveMode(isInteractive())
+          .setForceUpgradeMode(isForceUpgrade());
 
       // Starts upgrade.
       Upgrade.upgrade(context);
@@ -452,9 +448,7 @@
         final ConfirmationCallback cc = (ConfirmationCallback) c;
         List<String> choices = new ArrayList<String>();
 
-        final String defaultOption =
-            UpgradeContext.getDefaultOption(cc.getDefaultOption());
-
+        final String defaultOption = getDefaultOption(cc.getDefaultOption());
         StringBuilder prompt =
             new StringBuilder(StaticUtils.wrapText(cc.getPrompt(),
                 ServerConstants.MAX_LINE_WIDTH, 2));
@@ -553,10 +547,9 @@
             cc.setSelectedIndex(cc.getDefaultOption());
           }
           // Displays the prompt
-          prompt.append(" ").append(
-              UpgradeContext.getDefaultOption(cc.getSelectedIndex()));
+          prompt.append(" ").append(getDefaultOption(cc.getSelectedIndex()));
           println(Style.SUBTITLE, Message.raw(prompt), 0);
-          LOG.log(INFO, UpgradeContext.getDefaultOption(cc.getSelectedIndex()));
+          LOG.log(INFO, getDefaultOption(cc.getSelectedIndex()));
         }
       }
       else
@@ -566,4 +559,23 @@
       }
     }
   }
+
+
+
+  private static String getDefaultOption(final int defaultOption)
+  {
+    if (defaultOption == ConfirmationCallback.YES)
+    {
+      return INFO_PROMPT_YES_COMPLETE_ANSWER.get().toString();
+    }
+    else if (defaultOption == ConfirmationCallback.NO)
+    {
+      return INFO_PROMPT_NO_COMPLETE_ANSWER.get().toString();
+    }
+    else if (defaultOption == ConfirmationCallback.CANCEL)
+    {
+      return INFO_TASKINFO_CMD_CANCEL_CHAR.get().toString();
+    }
+    return null;
+  }
 }

--
Gitblit v1.10.0