From e9d8e51279f417f2f4948210b1cd1484cadf0bda Mon Sep 17 00:00:00 2001
From: Chris Ridd <chris.ridd@forgerock.com>
Date: Thu, 20 Aug 2015 17:19:24 +0000
Subject: [PATCH] CR-8001 OPENDJ-2216 Add upgrade task which reruns dsjavaproperties
---
opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java | 31 +++++++++++++++++++++++++++++++
1 files changed, 31 insertions(+), 0 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java
index 82fd890..dceb4e6 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java
@@ -38,6 +38,7 @@
import org.forgerock.i18n.LocalizableMessage;
import org.forgerock.i18n.slf4j.LocalizedLogger;
import org.forgerock.opendj.ldap.Filter;
+import org.opends.server.tools.JavaPropertiesTool;
import org.opends.server.tools.RebuildIndex;
import org.opends.server.util.BuildVersion;
import org.opends.server.util.ChangeOperationType;
@@ -335,6 +336,36 @@
}
/**
+ * Re-run the dsjavaproperties tool to rewrite the set-java-home script/batch file.
+ *
+ * @param summary
+ * The summary of the task.
+ * @return An upgrade task which runs dsjavaproperties.
+ */
+ public static UpgradeTask rerunJavaPropertiesTool(final LocalizableMessage summary)
+ {
+ return new AbstractUpgradeTask()
+ {
+ @Override
+ public void perform(UpgradeContext context) throws ClientException
+ {
+ logger.debug(summary);
+
+ final ProgressNotificationCallback pnc = new ProgressNotificationCallback(0, summary, 50);
+ context.notifyProgress(pnc);
+
+ int returnValue = JavaPropertiesTool.mainCLI("--quiet");
+ context.notifyProgress(pnc.setProgress(100));
+
+ if (JavaPropertiesTool.ErrorReturnCode.SUCCESSFUL.getReturnCode() != returnValue &&
+ JavaPropertiesTool.ErrorReturnCode.SUCCESSFUL_NOP.getReturnCode() != returnValue) {
+ throw new ClientException(ReturnCode.ERROR_UNEXPECTED, ERR_UPGRADE_DSJAVAPROPERTIES_FAILED.get());
+ }
+ }
+ };
+ }
+
+ /**
* Creates a group of tasks which will only be invoked if the current version
* is more recent than the provided version. This may be useful in cases where
* a regression was introduced in version X and resolved in a later version Y.
--
Gitblit v1.10.0