From ed3930daea274cb0f46d77f728f4482c69c48a03 Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Wed, 02 Mar 2016 15:45:31 +0000
Subject: [PATCH] OPENDJ-2730 Upgrade task to clean lib folder
---
opendj-server-legacy/src/main/java/org/opends/server/tools/upgrade/UpgradeTasks.java | 42 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 42 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 03b6fbf..b13efc6 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
@@ -81,6 +81,9 @@
/** A flag for marking 'rebuild all' task accepted by user. */
static boolean isRebuildAllIndexesTaskAccepted;
+ private static final List<String> SUPPORTED_LOCALES_FOR_3_0_0 = Arrays.asList(
+ "ca_ES", "de", "es", "fr", "ja", "ko", "pl", "zh_CN", "zh_TW");
+
/**
* Returns a new upgrade task which adds a config entry to the underlying
* config file.
@@ -1314,6 +1317,45 @@
};
}
+ /** Removes server and localized jars from previous version since names have changed. */
+ static UpgradeTask removeOldJarFiles()
+ {
+ return new AbstractUpgradeTask()
+ {
+ @Override
+ public void perform(final UpgradeContext context) throws ClientException
+ {
+ final ProgressNotificationCallback pnc = new ProgressNotificationCallback(
+ INFORMATION, INFO_UPGRADE_TASK_REMOVE_OLD_JARS.get(), 0);
+ context.notifyProgress(pnc);
+
+ for (final String locale : SUPPORTED_LOCALES_FOR_3_0_0)
+ {
+ deleteJarFileIfExists("OpenDJ_" + locale);
+ deleteJarFileIfExists("OpenDJ-" + locale);
+ }
+ deleteJarFileIfExists("OpenDJ",
+ // Jar files from 2.6.x
+ "jackson-core-asl", "jackson-mapper-asl", "json-fluent", "json-resource-servlet",
+ "mail", "opendj-ldap-sdk", "opendj-rest2ldap-servlet", "opendj-server2x-adapter");
+ context.notifyProgress(pnc.setProgress(100));
+ }
+
+ private void deleteJarFileIfExists(final String... jarFileNames)
+ {
+ for (final String jarFileName : jarFileNames)
+ {
+ final File f = new File(libDirectory, jarFileName + ".jar");
+ if (f.exists())
+ {
+ f.delete();
+ }
+ }
+ }
+ };
+
+ }
+
/** Prevent instantiation. */
private UpgradeTasks()
{
--
Gitblit v1.10.0