manifoldcf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kwri...@apache.org
Subject svn commit: r1607023 - in /manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces: BinaryInput.java CharacterInput.java TempFileCharacterInput.java TempFileInput.java
Date Tue, 01 Jul 2014 08:51:30 GMT
Author: kwright
Date: Tue Jul  1 08:51:29 2014
New Revision: 1607023

URL: http://svn.apache.org/r1607023
Log:
Regularize error handling

Modified:
    manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/BinaryInput.java
    manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/CharacterInput.java
    manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileCharacterInput.java
    manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileInput.java

Modified: manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/BinaryInput.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/BinaryInput.java?rev=1607023&r1=1607022&r2=1607023&view=diff
==============================================================================
--- manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/BinaryInput.java
(original)
+++ manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/BinaryInput.java
Tue Jul  1 08:51:29 2014
@@ -95,14 +95,18 @@ public abstract class BinaryInput extend
       stream.close();
       stream = null;
     }
-    catch (InterruptedIOException e)
-    {
-      throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-    }
     catch (IOException e)
     {
-      throw new ManifoldCFException("IO exception closing stream: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+      handleIOException(e,"closing stream");
     }
   }
 
+  protected static void handleIOException(IOException e, String context)
+    throws ManifoldCFException
+  {
+    if (e instanceof InterruptedIOException)
+      throw new ManifoldCFException(e.getMessage(),e,ManifoldCFException.INTERRUPTED);
+    throw new ManifoldCFException("IO exception while "+context+": "+e.getMessage(),e);
+  }
+
 }

Modified: manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/CharacterInput.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/CharacterInput.java?rev=1607023&r1=1607022&r2=1607023&view=diff
==============================================================================
--- manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/CharacterInput.java
(original)
+++ manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/CharacterInput.java
Tue Jul  1 08:51:29 2014
@@ -107,13 +107,9 @@ public abstract class CharacterInput ext
       stream.close();
       stream = null;
     }
-    catch (InterruptedIOException e)
-    {
-      throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-    }
     catch (IOException e)
     {
-      throw new ManifoldCFException("Error closing stream: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+      handleIOException(e, "closing stream");
     }
   }
 
@@ -125,4 +121,12 @@ public abstract class CharacterInput ext
   protected abstract void calculateHashValue()
     throws ManifoldCFException;
 
+  protected static void handleIOException(IOException e, String context)
+    throws ManifoldCFException
+  {
+    if (e instanceof InterruptedIOException)
+      throw new ManifoldCFException(e.getMessage(),e,ManifoldCFException.INTERRUPTED);
+    throw new ManifoldCFException("IO exception while "+context+": "+e.getMessage(),e);
+  }
+
 }

Modified: manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileCharacterInput.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileCharacterInput.java?rev=1607023&r1=1607022&r2=1607023&view=diff
==============================================================================
--- manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileCharacterInput.java
(original)
+++ manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileCharacterInput.java
Tue Jul  1 08:51:29 2014
@@ -109,13 +109,9 @@ public class TempFileCharacterInput exte
         chunkTotal += readsize;
       }
     }
-    catch (InterruptedIOException e)
-    {
-      throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-    }
     catch (IOException e)
     {
-      throw new ManifoldCFException("Cannot read character stream: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+      handleIOException(e,"reading character stream");
     }
     
     // Set up hash digest, and calculate the initial hash.
@@ -205,18 +201,16 @@ public class TempFileCharacterInput exte
             throw (Error)e;
           if (e instanceof RuntimeException)
             throw (RuntimeException)e;
-          if (e instanceof Exception)
-            throw (Exception)e;
-          throw new Exception("Unexpected throwable: "+e.getMessage(),e);
+          if (e instanceof ManifoldCFException)
+            throw (ManifoldCFException)e;
+          if (e instanceof IOException)
+            throw (IOException)e;
+          throw new RuntimeException("Unexpected throwable of type "+e.getClass().getName()+":
"+e.getMessage(),e);
         }
       }
-      catch (InterruptedIOException e)
-      {
-        throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-      }
-      catch (Exception e)
+      catch (IOException e)
       {
-        throw new ManifoldCFException("Cannot write temporary file: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+        handleIOException(e,"writing temporary file");
       }
     }
     
@@ -387,13 +381,9 @@ public class TempFileCharacterInput exte
         reader.close();
       }
     }
-    catch (InterruptedIOException e)
-    {
-      throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-    }
     catch (IOException e)
     {
-      throw new ManifoldCFException("Can't scan file: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+      handleIOException(e,"scanning file");
     }
   }
 

Modified: manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileInput.java
URL: http://svn.apache.org/viewvc/manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileInput.java?rev=1607023&r1=1607022&r2=1607023&view=diff
==============================================================================
--- manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileInput.java
(original)
+++ manifoldcf/trunk/framework/core/src/main/java/org/apache/manifoldcf/core/interfaces/TempFileInput.java
Tue Jul  1 08:51:29 2014
@@ -101,13 +101,9 @@ public class TempFileInput extends Binar
         chunkTotal += readsize;
       }
     }
-    catch (InterruptedIOException e)
-    {
-      throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-    }
     catch (IOException e)
     {
-      throw new ManifoldCFException("Cannot read byte stream: "+e.getMessage(),e,ManifoldCFException.GENERAL_ERROR);
+      handleIOException(e,"reading byte stream");
     }
 
     if (eofSeen && chunkTotal < maxMemSize)
@@ -181,18 +177,16 @@ public class TempFileInput extends Binar
             throw (Error)e;
           if (e instanceof RuntimeException)
             throw (RuntimeException)e;
-          if (e instanceof Exception)
-            throw (Exception)e;
-          throw new Exception("Unexpected throwable: "+e.getMessage(),e);
+          if (e instanceof ManifoldCFException)
+            throw (ManifoldCFException)e;
+          if (e instanceof IOException)
+            throw (IOException)e;
+          throw new RuntimeException("Unexpected throwable of type "+e.getClass().getName()+":
"+e.getMessage(),e);
         }
       }
-      catch (InterruptedIOException e)
-      {
-        throw new ManifoldCFException("Interrupted: "+e.getMessage(),e,ManifoldCFException.INTERRUPTED);
-      }
-      catch (Exception e)
+      catch (IOException e)
       {
-        throw new ManifoldCFException("Cannot write temporary file",e,ManifoldCFException.GENERAL_ERROR);
+        handleIOException(e,"writing temporary file");
       }
     }
   }



Mime
View raw message