Create base Sone exception and insert-specific exception.
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Tue, 11 Oct 2011 19:27:56 +0000 (21:27 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Tue, 11 Oct 2011 19:27:56 +0000 (21:27 +0200)
src/main/java/net/pterodactylus/sone/core/FreenetInterface.java
src/main/java/net/pterodactylus/sone/core/SoneException.java
src/main/java/net/pterodactylus/sone/core/SoneInsertException.java [new file with mode: 0644]

index 39f342c..30673a3 100644 (file)
@@ -26,7 +26,6 @@ import java.util.Map;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
-import net.pterodactylus.sone.core.SoneException.Type;
 import net.pterodactylus.sone.data.Image;
 import net.pterodactylus.sone.data.Sone;
 import net.pterodactylus.sone.data.TemporaryImage;
@@ -154,7 +153,7 @@ public class FreenetInterface {
                        ClientPutter clientPutter = client.insert(insertBlock, false, null, false, insertContext, insertToken, RequestStarter.INTERACTIVE_PRIORITY_CLASS);
                        insertToken.setClientPutter(clientPutter);
                } catch (InsertException ie1) {
-                       throw new SoneException(Type.INSERT_FAILED, "Could not start image insert.", ie1);
+                       throw new SoneInsertException("Could not start image insert.", ie1);
                }
        }
 
@@ -175,7 +174,7 @@ public class FreenetInterface {
                try {
                        return client.insertManifest(insertUri, manifestEntries, defaultFile);
                } catch (InsertException ie1) {
-                       throw new SoneException(null, ie1);
+                       throw new SoneException(ie1);
                }
        }
 
index 271627e..683a148 100644 (file)
@@ -25,88 +25,42 @@ package net.pterodactylus.sone.core;
 public class SoneException extends Exception {
 
        /**
-        * Defines the different error. This is an enum instead of custom exceptions
-        * to keep the number of exceptions down. Specialized exceptions might still
-        * exist, though.
-        */
-       public static enum Type {
-
-               /** An invalid Sone name was specified. */
-               INVALID_SONE_NAME,
-
-               /** An invalid URI was specified. */
-               INVALID_URI,
-
-               /** An insert failed. */
-               INSERT_FAILED,
-
-       }
-
-       /** The type of the exception. */
-       private final Type type;
-
-       /**
         * Creates a new Sone exception.
-        *
-        * @param type
-        *            The type of the occured error
         */
-       public SoneException(Type type) {
-               this.type = type;
+       public SoneException() {
+               super();
        }
 
        /**
         * Creates a new Sone exception.
         *
-        * @param type
-        *            The type of the occured error
         * @param message
         *            The message of the exception
         */
-       public SoneException(Type type, String message) {
+       public SoneException(String message) {
                super(message);
-               this.type = type;
        }
 
        /**
         * Creates a new Sone exception.
         *
-        * @param type
-        *            The type of the occured error
         * @param cause
         *            The cause of the exception
         */
-       public SoneException(Type type, Throwable cause) {
+       public SoneException(Throwable cause) {
                super(cause);
-               this.type = type;
        }
 
        /**
         * Creates a new Sone exception.
         *
-        * @param type
-        *            The type of the occured error
         * @param message
         *            The message of the exception
         * @param cause
         *            The cause of the exception
         */
-       public SoneException(Type type, String message, Throwable cause) {
+       public SoneException(String message, Throwable cause) {
                super(message, cause);
-               this.type = type;
-       }
-
-       //
-       // ACCESSORS
-       //
-
-       /**
-        * Returns the type of this exception.
-        *
-        * @return The type of this exception (may be {@code null})
-        */
-       public Type getType() {
-               return type;
        }
 
 }
diff --git a/src/main/java/net/pterodactylus/sone/core/SoneInsertException.java b/src/main/java/net/pterodactylus/sone/core/SoneInsertException.java
new file mode 100644 (file)
index 0000000..350c3d8
--- /dev/null
@@ -0,0 +1,66 @@
+/*
+ * Sone - SoneInsertException.java - Copyright © 2011 David Roden
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+package net.pterodactylus.sone.core;
+
+/**
+ * Exception that signals a problem with an insert.
+ *
+ * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a>
+ */
+public class SoneInsertException extends SoneException {
+
+       /**
+        * Creates a new Sone insert exception.
+        */
+       public SoneInsertException() {
+               super();
+       }
+
+       /**
+        * Creates a new Sone insert exception.
+        *
+        * @param message
+        *            The message of the exception
+        */
+       public SoneInsertException(String message) {
+               super(message);
+       }
+
+       /**
+        * Creates a new Sone insert exception.
+        *
+        * @param cause
+        *            The cause of the exception
+        */
+       public SoneInsertException(Throwable cause) {
+               super(cause);
+       }
+
+       /**
+        * Creates a new Sone insert exception.
+        *
+        * @param message
+        *            The message of the exception
+        * @param cause
+        *            The cause of the exception
+        */
+       public SoneInsertException(String message, Throwable cause) {
+               super(message, cause);
+       }
+
+}