From f8b11288a317201ce86b9ebd8f79cb5e371b206f Mon Sep 17 00:00:00 2001
From: Gaetan Boismal <gaetan.boismal@forgerock.com>
Date: Mon, 04 May 2015 14:02:49 +0000
Subject: [PATCH] OPENDJ-1991 Code cleanup
---
opendj-server-legacy/src/main/java/org/opends/quicksetup/ui/QuickSetup.java | 356 +++++++++++++++++++++++++++--------------------------------
1 files changed, 162 insertions(+), 194 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/quicksetup/ui/QuickSetup.java b/opendj-server-legacy/src/main/java/org/opends/quicksetup/ui/QuickSetup.java
index e6d4917..4034908 100644
--- a/opendj-server-legacy/src/main/java/org/opends/quicksetup/ui/QuickSetup.java
+++ b/opendj-server-legacy/src/main/java/org/opends/quicksetup/ui/QuickSetup.java
@@ -54,24 +54,16 @@
import java.util.Map;
/**
- * This class is responsible for doing the following:
- *
- * Check whether we are installing or uninstalling and which type of
- * installation we are running.
- *
+ * This class is responsible for doing the following: Check whether we are
+ * installing or uninstalling and which type of installation we are running.
* Performs all the checks and validation of the data provided by the user
- * during the setup.
- *
- * It will launch also the installation once the user clicks on 'Finish' if we
- * are installing the product.
- *
- * If we are running a web start installation it will start the background
- * downloading of the jar files that are required to perform the installation
- * (OpenDS.jar, je.jar, etc.). The global idea is to force the user to
- * download just one jar file (quicksetup.jar) to launch the Web Start
- * installer. Until this class is not finished the WebStart Installer will be
- * on the ProgressStep.DOWNLOADING step.
- *
+ * during the setup. It will launch also the installation once the user clicks
+ * on 'Finish' if we are installing the product. If we are running a web start
+ * installation it will start the background downloading of the jar files that
+ * are required to perform the installation (OpenDS.jar, je.jar, etc.). The
+ * global idea is to force the user to download just one jar file
+ * (quicksetup.jar) to launch the Web Start installer. Until this class is not
+ * finished the WebStart Installer will be on the ProgressStep.DOWNLOADING step.
*/
public class QuickSetup implements ButtonActionListener, ProgressUpdateListener
{
@@ -106,8 +98,9 @@
* it can perform long operations which can make the user think that the UI is
* blocked.
*
- * @param args for the moment this parameter is not used but we keep it in
- * order to (in case of need) pass parameters through the command line.
+ * @param args
+ * for the moment this parameter is not used but we keep it in order
+ * to (in case of need) pass parameters through the command line.
*/
public void initialize(String[] args)
{
@@ -124,7 +117,7 @@
}
else
{
- application.setUserArguments(new String[]{});
+ application.setUserArguments(new String[] {});
}
try
{
@@ -137,12 +130,12 @@
}
/* In the calls to setCurrentStep the dialog will be created */
- setCurrentStep(application.getFirstWizardStep());
+ setCurrentStep(application.getFirstWizardStep());
}
/**
- * This method displays the setup dialog. This method must be called from the
- * event thread.
+ * This method displays the setup dialog.
+ * This method must be called from the event thread.
*/
public void display()
{
@@ -153,7 +146,8 @@
* ButtonActionListener implementation. It assumes that we are called in the
* event thread.
*
- * @param ev the ButtonEvent we receive.
+ * @param ev
+ * the ButtonEvent we receive.
*/
public void buttonActionPerformed(ButtonEvent ev)
{
@@ -162,48 +156,39 @@
case NEXT:
nextClicked();
break;
-
case CLOSE:
closeClicked();
break;
-
case FINISH:
finishClicked();
break;
-
case QUIT:
quitClicked();
break;
-
case CONTINUE_INSTALL:
continueInstallClicked();
break;
-
case PREVIOUS:
previousClicked();
break;
-
case LAUNCH_STATUS_PANEL:
launchStatusPanelClicked();
break;
-
case INPUT_PANEL_BUTTON:
inputPanelButtonClicked();
break;
-
default:
- throw new IllegalArgumentException("Unknown button name: "
- + ev.getButtonName());
+ throw new IllegalArgumentException("Unknown button name: " + ev.getButtonName());
}
}
/**
- * ProgressUpdateListener implementation. Here we take the
- * ProgressUpdateEvent and create a ProgressDescriptor that
- * will be used to update the progress dialog.
+ * ProgressUpdateListener implementation. Here we take the ProgressUpdateEvent
+ * and create a ProgressDescriptor that will be used to update the progress
+ * dialog.
*
- * @param ev the ProgressUpdateEvent we receive.
- *
+ * @param ev
+ * the ProgressUpdateEvent we receive.
* @see #runDisplayUpdater()
*/
public void progressUpdate(ProgressUpdateEvent ev)
@@ -222,13 +207,12 @@
}
/**
- * This method is used to update the progress dialog.
- *
- * We are receiving notifications from the installer and uninstaller (this
- * class is a ProgressListener). However if we lots of notifications updating
- * the progress panel every time we get a progress update can result of a lot
- * of flickering. So the idea here is to have a minimal time between 2 updates
- * of the progress dialog (specified by UPDATE_PERIOD).
+ * This method is used to update the progress dialog. We are receiving
+ * notifications from the installer and uninstaller (this class is a
+ * ProgressListener). However if we lots of notifications updating the
+ * progress panel every time we get a progress update can result of a lot of
+ * flickering. So the idea here is to have a minimal time between 2 updates of
+ * the progress dialog (specified by UPDATE_PERIOD).
*
* @see #progressUpdate(org.opends.quicksetup.event.ProgressUpdateEvent)
*/
@@ -240,19 +224,23 @@
try
{
Thread.sleep(UPDATE_PERIOD);
- } catch (Exception ex)
- {
}
- synchronized (this) {
+ catch (Exception ex) {}
+
+ synchronized (this)
+ {
final ProgressDescriptor desc = descriptorToDisplay;
- if (desc != null) {
- if (desc != lastDisplayedDescriptor) {
+ if (desc != null)
+ {
+ if (desc != lastDisplayedDescriptor)
+ {
lastDisplayedDescriptor = desc;
- SwingUtilities.invokeLater(new Runnable() {
- public void run() {
- if (application.isFinished() &&
- !getCurrentStep().isFinishedStep())
+ SwingUtilities.invokeLater(new Runnable()
+ {
+ public void run()
+ {
+ if (application.isFinished() && !getCurrentStep().isFinishedStep())
{
setCurrentStep(application.getFinishedStep());
}
@@ -266,10 +254,7 @@
}
}
- /**
- * Method called when user clicks 'Next' button of the wizard.
- *
- */
+ /** Method called when user clicks 'Next' button of the wizard. */
private void nextClicked()
{
final WizardStep cStep = getCurrentStep();
@@ -279,36 +264,41 @@
worker.startBackgroundTask();
}
- private void updateUserData(final WizardStep cStep) {
- BackgroundTask<?> worker = new BackgroundTask<Object>() {
- public Object processBackgroundTask() throws UserDataException {
- try {
+ private void updateUserData(final WizardStep cStep)
+ {
+ BackgroundTask<?> worker = new BackgroundTask<Object>()
+ {
+ public Object processBackgroundTask() throws UserDataException
+ {
+ try
+ {
application.updateUserData(cStep, QuickSetup.this);
}
- catch (UserDataException uide) {
+ catch (UserDataException uide)
+ {
throw uide;
}
- catch (Throwable t) {
- throw new UserDataException(cStep,
- getThrowableMsg(INFO_BUG_MSG.get(), t));
+ catch (Throwable t)
+ {
+ throw new UserDataException(cStep, getThrowableMsg(INFO_BUG_MSG.get(), t));
}
return null;
}
- public void backgroundTaskCompleted(Object returnValue,
- Throwable throwable) {
+ public void backgroundTaskCompleted(Object returnValue, Throwable throwable)
+ {
getDialog().workerFinished();
- if (throwable != null) {
+ if (throwable != null)
+ {
UserDataException ude = (UserDataException) throwable;
if (ude instanceof UserDataConfirmationException)
{
- if (displayConfirmation(ude.getMessageObject(),
- INFO_CONFIRMATION_TITLE.get()))
+ if (displayConfirmation(ude.getMessageObject(), INFO_CONFIRMATION_TITLE.get()))
{
try
{
- setCurrentStep(application.getNextWizardStep(cStep));
+ setCurrentStep(application.getNextWizardStep(cStep));
}
catch (Throwable t)
{
@@ -320,10 +310,13 @@
{
displayError(ude.getMessageObject(), INFO_ERROR_TITLE.get());
}
- } else {
+ }
+ else
+ {
setCurrentStep(application.getNextWizardStep(cStep));
}
- if (currentStep.isProgressStep()) {
+ if (currentStep.isProgressStep())
+ {
launch();
}
}
@@ -332,22 +325,17 @@
worker.startBackgroundTask();
}
- /**
- * Method called when user clicks 'Finish' button of the wizard.
- *
- */
+ /** Method called when user clicks 'Finish' button of the wizard. */
private void finishClicked()
{
final WizardStep cStep = getCurrentStep();
- if (application.finishClicked(cStep, this)) {
+ if (application.finishClicked(cStep, this))
+ {
updateUserData(cStep);
}
}
- /**
- * Method called when user clicks 'Previous' button of the wizard.
- *
- */
+ /** Method called when user clicks 'Previous' button of the wizard. */
private void previousClicked()
{
WizardStep cStep = getCurrentStep();
@@ -355,19 +343,15 @@
setCurrentStep(application.getPreviousWizardStep(cStep));
}
- /**
- * Method called when user clicks 'Quit' button of the wizard.
- *
- */
+ /** Method called when user clicks 'Quit' button of the wizard. */
private void quitClicked()
{
- WizardStep cStep = getCurrentStep();
- application.quitClicked(cStep, this);
+ application.quitClicked(getCurrentStep(), this);
}
/**
- * Method called when user clicks 'Continue' button in the case where there
- * is something installed.
+ * Method called when user clicks 'Continue' button in the case where there is
+ * something installed.
*/
private void continueInstallClicked()
{
@@ -380,101 +364,93 @@
/** Method called when user clicks 'Close' button of the wizard. */
private void closeClicked()
{
- WizardStep cStep = getCurrentStep();
- application.closeClicked(cStep, this);
+ application.closeClicked(getCurrentStep(), this);
}
private void launchStatusPanelClicked()
{
BackgroundTask<Object> worker = new BackgroundTask<Object>()
{
- public Object processBackgroundTask() throws UserDataException {
+ public Object processBackgroundTask() throws UserDataException
+ {
try
{
- Installation installation;
- if (isWebStart()) {
+ final Installation installation;
+ if (isWebStart())
+ {
String installDir = application.getUserData().getServerLocation();
- installation =
- new Installation(installDir, installDir);
- } else {
+ installation = new Installation(installDir, installDir);
+ }
+ else
+ {
installation = Installation.getLocal();
}
- ProcessBuilder pb;
- if (isMacOS()) {
- List<String> cmd = new ArrayList<String>();
+
+ final ProcessBuilder pb;
+ if (isMacOS())
+ {
+ List<String> cmd = new ArrayList<>();
cmd.add(MAC_APPLICATIONS_OPENER);
- cmd.add(getScriptPath(
- getPath(installation.getControlPanelCommandFile())));
- pb = new ProcessBuilder(cmd);
- } else {
- String cmd = getScriptPath(
- getPath(installation.getControlPanelCommandFile()));
+ cmd.add(getScriptPath(getPath(installation.getControlPanelCommandFile())));
pb = new ProcessBuilder(cmd);
}
+ else
+ {
+ pb = new ProcessBuilder(getScriptPath(getPath(installation.getControlPanelCommandFile())));
+ }
+
Map<String, String> env = pb.environment();
env.put(SetupUtils.OPENDJ_JAVA_HOME, System.getProperty("java.home"));
- Process process = pb.start();
- /*
- * Wait for 3 seconds. Assume that if the process has not exited
- * everything went fine.
- */
+ final Process process = pb.start();
+ // Wait for 3 seconds. Assume that if the process has not exited everything went fine.
int returnValue = 0;
try
{
Thread.sleep(3000);
}
- catch (Throwable t)
- {
- }
+ catch (Throwable t) {}
+
try
{
returnValue = process.exitValue();
}
catch (IllegalThreadStateException e)
{
- // The process has not exited: assume that the status panel could
- // be launched successfully.
+ // The process has not exited: assume that the status panel could be launched successfully.
}
if (returnValue != 0)
{
- throw new Error(
- INFO_COULD_NOT_LAUNCH_CONTROL_PANEL_MSG.get().toString());
+ throw new Error(INFO_COULD_NOT_LAUNCH_CONTROL_PANEL_MSG.get().toString());
}
}
catch (Throwable t)
{
// This looks like a bug
t.printStackTrace();
- throw new Error(
- INFO_COULD_NOT_LAUNCH_CONTROL_PANEL_MSG.get().toString());
+ throw new Error(INFO_COULD_NOT_LAUNCH_CONTROL_PANEL_MSG.get().toString());
}
+
return null;
}
- public void backgroundTaskCompleted(Object returnValue,
- Throwable throwable)
+ public void backgroundTaskCompleted(Object returnValue, Throwable throwable)
{
- getDialog().getFrame().setCursor(
- Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
-
+ getDialog().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
if (throwable != null)
{
- displayError(LocalizableMessage.raw(throwable.getMessage()),
- INFO_ERROR_TITLE.get());
+ displayError(LocalizableMessage.raw(throwable.getMessage()), INFO_ERROR_TITLE.get());
}
}
};
- getDialog().getFrame().setCursor(
- Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
+ getDialog().getFrame().setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
worker.startBackgroundTask();
}
/**
- * This method tries to update the visibility of the steps panel. The
- * contents are updated because the user clicked in one of the buttons
- * that could make the steps panel to change.
- *
+ * This method tries to update the visibility of the steps panel. The contents
+ * are updated because the user clicked in one of the buttons that could make
+ * the steps panel to change.
*/
private void inputPanelButtonClicked()
{
@@ -485,7 +461,6 @@
* Method called when we want to quit the setup (for instance when the user
* clicks on 'Close' or 'Quit' buttons and has confirmed that (s)he wants to
* quit the program.
- *
*/
public void quit()
{
@@ -494,19 +469,20 @@
System.exit(0);
}
- private void flushLogs() {
+ private void flushLogs()
+ {
java.util.logging.Logger julLogger = java.util.logging.Logger.getLogger(logger.getName());
Handler[] handlers = julLogger.getHandlers();
- if (handlers != null) {
- for (Handler h : handlers) {
+ if (handlers != null)
+ {
+ for (Handler h : handlers)
+ {
h.flush();
}
}
}
- /**
- * Launch the QuickSetup application Open DS.
- */
+ /** Launch the QuickSetup application Open DS. */
public void launch()
{
application.addProgressUpdateListener(this);
@@ -538,7 +514,8 @@
* dialog to display the panel that corresponds to the step passed as
* argument.
*
- * @param step The step to be displayed.
+ * @param step
+ * The step to be displayed.
*/
public void setCurrentStep(WizardStep step)
{
@@ -547,8 +524,7 @@
throw new NullPointerException("step is null");
}
currentStep = step;
- application.setDisplayedWizardStep(step, application.getUserData(),
- getDialog());
+ application.setDisplayedWizardStep(step, application.getUserData(), getDialog());
}
/**
@@ -560,8 +536,7 @@
{
if (dialog == null)
{
- dialog = new QuickSetupDialog(application,
- installStatus, this);
+ dialog = new QuickSetupDialog(application, installStatus, this);
dialog.addButtonActionListener(this);
application.setQuickSetupDialog(dialog);
}
@@ -578,9 +553,12 @@
*/
public void displayError(LocalizableMessage msg, LocalizableMessage title)
{
- if (isCli()) {
+ if (isCli())
+ {
System.err.println(msg);
- } else {
+ }
+ else
+ {
getDialog().displayError(msg, title);
}
}
@@ -593,7 +571,7 @@
* @param title
* the title of the dialog.
* @return <CODE>true</CODE> if the user confirms the message, or
- * <CODE>false</CODE> if not.
+ * <CODE>false</CODE> if not.
*/
public boolean displayConfirmation(LocalizableMessage msg, LocalizableMessage title)
{
@@ -609,20 +587,13 @@
*/
public String getFieldStringValue(FieldName fieldName)
{
- String sValue = null;
-
- Object value = getFieldValue(fieldName);
+ final Object value = getFieldValue(fieldName);
if (value != null)
{
- if (value instanceof String)
- {
- sValue = (String) value;
- } else
- {
- sValue = String.valueOf(value);
- }
+ return String.valueOf(value);
}
- return sValue;
+
+ return null;
}
/**
@@ -655,7 +626,6 @@
/**
* A method to initialize the look and feel.
- *
*/
private void initLookAndFeel() throws Throwable
{
@@ -667,8 +637,7 @@
* ProgressUpdateEvent.
*
* @param ev
- * the ProgressUpdateEvent used to generate the
- * ProgressDescriptor.
+ * the ProgressUpdateEvent used to generate the ProgressDescriptor.
* @return the ProgressDescriptor.
*/
private ProgressDescriptor createProgressDescriptor(ProgressUpdateEvent ev)
@@ -683,13 +652,12 @@
progressDetails.append(additionalDetails);
}
/*
- Note: progressDetails might have a certain number of characters that
- break LocalizableMessage Formatter (for instance percentages). When fix for
- issue 2142 was committed it broke this code. So here
- we use LocalizableMessage.raw instead of calling directly progressDetails.toMessage
- */
- return new ProgressDescriptor(status, ratio, newProgressLabel,
- LocalizableMessage.raw(progressDetails.toString()));
+ * Note: progressDetails might have a certain number of characters that
+ * break LocalizableMessage Formatter (for instance percentages).
+ * When fix for issue 2142 was committed it broke this code.
+ * So here we use LocalizableMessage.raw instead of calling directly progressDetails.toMessage
+ */
+ return new ProgressDescriptor(status, ratio, newProgressLabel, LocalizableMessage.raw(progressDetails.toString()));
}
/**
@@ -699,27 +667,31 @@
private class NextClickedBackgroundTask extends BackgroundTask<Object>
{
private WizardStep cStep;
+
public NextClickedBackgroundTask(WizardStep cStep)
{
this.cStep = cStep;
}
- public Object processBackgroundTask() throws UserDataException {
- try {
+ public Object processBackgroundTask() throws UserDataException
+ {
+ try
+ {
application.updateUserData(cStep, QuickSetup.this);
}
- catch (UserDataException uide) {
+ catch (UserDataException uide)
+ {
throw uide;
}
- catch (Throwable t) {
- throw new UserDataException(cStep,
- getThrowableMsg(INFO_BUG_MSG.get(), t));
+ catch (Throwable t)
+ {
+ throw new UserDataException(cStep, getThrowableMsg(INFO_BUG_MSG.get(), t));
}
return null;
}
- public void backgroundTaskCompleted(Object returnValue,
- Throwable throwable) {
+ public void backgroundTaskCompleted(Object returnValue, Throwable throwable)
+ {
getDialog().workerFinished();
if (throwable != null)
@@ -733,31 +705,25 @@
UserDataException ude = (UserDataException) throwable;
if (ude instanceof UserDataConfirmationException)
{
- if (displayConfirmation(ude.getMessageObject(),
- INFO_CONFIRMATION_TITLE.get()))
+ if (displayConfirmation(ude.getMessageObject(), INFO_CONFIRMATION_TITLE.get()))
{
setCurrentStep(application.getNextWizardStep(cStep));
}
}
else if (ude instanceof UserDataCertificateException)
{
- final UserDataCertificateException ce =
- (UserDataCertificateException)ude;
- CertificateDialog dlg =
- new CertificateDialog(getDialog().getFrame(), ce);
+ final UserDataCertificateException ce = (UserDataCertificateException) ude;
+ CertificateDialog dlg = new CertificateDialog(getDialog().getFrame(), ce);
dlg.pack();
dlg.setVisible(true);
CertificateDialog.ReturnType answer = dlg.getUserAnswer();
if (answer != CertificateDialog.ReturnType.NOT_ACCEPTED)
{
- /*
- * Retry the click but now with the certificate accepted.
- */
- application.acceptCertificateForException(ce,
- answer == CertificateDialog.ReturnType.ACCEPTED_PERMANENTLY);
+ // Retry the click but now with the certificate accepted.
+ final boolean acceptPermanently = answer == CertificateDialog.ReturnType.ACCEPTED_PERMANENTLY;
+ application.acceptCertificateForException(ce, acceptPermanently);
application.nextClicked(cStep, QuickSetup.this);
- BackgroundTask<Object> worker =
- new NextClickedBackgroundTask(cStep);
+ BackgroundTask<Object> worker = new NextClickedBackgroundTask(cStep);
getDialog().workerStarted();
worker.startBackgroundTask();
}
@@ -767,7 +733,9 @@
displayError(ude.getMessageObject(), INFO_ERROR_TITLE.get());
}
}
- } else {
+ }
+ else
+ {
setCurrentStep(application.getNextWizardStep(cStep));
}
}
--
Gitblit v1.10.0