From a96b9a1204be71baf452b2a197e735e130339e82 Mon Sep 17 00:00:00 2001
From: Jean-Noel Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Tue, 12 May 2015 15:11:06 +0000
Subject: [PATCH] OpenDsException.java: Now extends LocalizableException which allows to use try with multi-catch feature, across server/SDK exceptions.

---
 opendj-server-legacy/src/main/java/org/opends/server/types/OpenDsException.java |   56 +++++++++++++++++++-------------------------------------
 1 files changed, 19 insertions(+), 37 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/types/OpenDsException.java b/opendj-server-legacy/src/main/java/org/opends/server/types/OpenDsException.java
index 233e980..0e5715d 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/types/OpenDsException.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/types/OpenDsException.java
@@ -22,47 +22,36 @@
  *
  *
  *      Copyright 2008 Sun Microsystems, Inc.
- *      Portions Copyright 2014 ForgeRock AS
+ *      Portions Copyright 2014-2015 ForgeRock AS
  */
-
 package org.opends.server.types;
 
+import org.forgerock.i18n.LocalizableException;
 import org.forgerock.i18n.LocalizableMessage;
 
-
-/**
- * This class defines a base exception for OpenDS exceptions.
- */
+/** This class defines a base exception for OpenDS exceptions. */
 @org.opends.server.types.PublicAPI(
      stability=org.opends.server.types.StabilityLevel.VOLATILE,
      mayInstantiate=false,
      mayExtend=false,
      mayInvoke=true)
-public abstract class OpenDsException
-        extends Exception
+public abstract class OpenDsException extends Exception implements LocalizableException
 {
-
-  /**
-   * Generated serialization ID.
-   */
+  /** Generated serialization ID. */
   private static final long serialVersionUID = 7310881401563732702L;
 
   /** LocalizableMessage that explains the problem. */
-  LocalizableMessage message;
+  private final LocalizableMessage message;
 
-  /**
-   * Creates a new identified exception.
-   */
+  /** Creates a new identified exception. */
   protected OpenDsException()
   {
-    super();
+    this(null, null);
   }
 
   /**
-   * Constructs a new instance from another
-   * <code>OpenDsException</code>.
-   * This constructor sets the message to be that of
-   * <code>cause</code>.
+   * Constructs a new instance from another <code>OpenDsException</code>.
+   * This constructor sets the message to be that of <code>cause</code>.
    *
    * @param cause exception whose message will be used for
    *        this exception's message.
@@ -74,36 +63,28 @@
   /**
    * Creates a new identified exception with the provided information.
    *
-   * @param  message  The message that explains the problem that
-   *                  occurred.
+   * @param  message  The message that explains the problem that occurred.
    */
   protected OpenDsException(LocalizableMessage message)
   {
     this(message, null);
   }
 
-
-
   /**
    * Creates a new identified exception with the provided information.
    *
-   * @param  cause  The underlying cause that triggered this
-   *                exception.
+   * @param  cause  The underlying cause that triggered this exception.
    */
   protected OpenDsException(Throwable cause)
   {
     this(null, cause);
   }
 
-
-
   /**
    * Creates a new identified exception with the provided information.
    *
-   * @param  message  The message that explains the problem that
-   *                  occurred.
-   * @param  cause    The underlying cause that triggered this
-   *                  exception.
+   * @param  message  The message that explains the problem that occurred.
+   * @param  cause    The underlying cause that triggered this exception.
    */
   protected OpenDsException(LocalizableMessage message, Throwable cause)
   {
@@ -111,18 +92,19 @@
             cause != null ? cause.getMessage() : null, cause);
     if (message != null) {
       this.message = message;
-    } else if (cause instanceof OpenDsException) {
-      this.message = ((OpenDsException)cause).getMessageObject();
+    } else if (cause instanceof LocalizableException) {
+      this.message = ((LocalizableException) cause).getMessageObject();
+    } else {
+      this.message = null;
     }
   }
 
-
-
   /**
    * Returns the message that explains the problem that occurred.
    *
    * @return LocalizableMessage of the problem
    */
+  @Override
   public LocalizableMessage getMessageObject() {
     return this.message;
   }

--
Gitblit v1.10.0