From 4525af355d0db0cf9edc1da642aacd14ed52f2ba Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Mon, 19 Nov 2007 17:14:24 +0000
Subject: [PATCH] Fix for issue 2214 (Provide a manner to accept permanently certificates).

---
 opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetup.java |   31 ++++++++-----------------------
 1 files changed, 8 insertions(+), 23 deletions(-)

diff --git a/opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetup.java b/opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetup.java
index 50ffe25..41515a2 100644
--- a/opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetup.java
+++ b/opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetup.java
@@ -595,27 +595,6 @@
   }
 
   /**
-   * Displays a dialog asking the user to accept a certificate.
-   *
-   * @param ce
-   *          the certificate exception that occurred.
-   * @return <CODE>true</CODE> if the user confirms the message, or
-   * <CODE>false</CODE> if not.
-   */
-  private boolean askToAcceptCertificate(UserDataCertificateException ce)
-  {
-    boolean accept = false;
-    CertificateDialog dlg = new CertificateDialog(getDialog().getFrame(), ce);
-    dlg.pack();
-    dlg.setVisible(true);
-    if (dlg.isAccepted())
-    {
-      accept = true;
-    }
-    return accept;
-  }
-
-  /**
    * Gets the string value for a given field name.
    *
    * @param fieldName
@@ -756,12 +735,18 @@
           {
             final UserDataCertificateException ce =
               (UserDataCertificateException)ude;
-            if (askToAcceptCertificate(ce))
+            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);
+              application.acceptCertificateForException(ce,
+                  answer == CertificateDialog.ReturnType.ACCEPTED_PERMANENTLY);
               application.nextClicked(cStep, QuickSetup.this);
               BackgroundTask worker = new NextClickedBackgroundTask(cStep);
               getDialog().workerStarted();

--
Gitblit v1.10.0