Rename exception variable.
[sonitus.git] / src / main / java / net / pterodactylus / sonitus / data / Connection.java
index b8bee32..9377579 100644 (file)
@@ -54,10 +54,15 @@ public abstract class Connection implements Runnable {
                        try {
                                byte[] buffer = source.get(bufferSize());
                                feed(buffer);
-                       } catch (IOException e) {
-                               return;
+                       } catch (IOException ioe1) {
+                               break;
                        }
                }
+               try {
+                       finish();
+               } catch (IOException ioe1) {
+                       /* well, what can we do? nothing. */
+               }
        }
 
        //
@@ -82,4 +87,12 @@ public abstract class Connection implements Runnable {
         */
        protected abstract void feed(byte[] buffer) throws IOException;
 
+       /**
+        * Notifies the sink that the source does not deliver any more data.
+        *
+        * @throws IOException
+        *              if an I/O error occurs
+        */
+       protected abstract void finish() throws IOException;
+
 }