projects
/
sonitus.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3edbf1f
)
Add finish() method to Connection.
author
David ‘Bombe’ Roden
<bombe@pterodactylus.net>
Sat, 16 Mar 2013 00:28:18 +0000
(
01:28
+0100)
committer
David ‘Bombe’ Roden
<bombe@pterodactylus.net>
Sat, 16 Mar 2013 00:28:18 +0000
(
01:28
+0100)
src/main/java/net/pterodactylus/sonitus/data/Connection.java
patch
|
blob
|
history
src/main/java/net/pterodactylus/sonitus/data/filter/ExternalFilter.java
patch
|
blob
|
history
src/main/java/net/pterodactylus/sonitus/data/sink/AudioSink.java
patch
|
blob
|
history
diff --git
a/src/main/java/net/pterodactylus/sonitus/data/Connection.java
b/src/main/java/net/pterodactylus/sonitus/data/Connection.java
index
b8bee32
..
762ba02
100644
(file)
--- a/
src/main/java/net/pterodactylus/sonitus/data/Connection.java
+++ b/
src/main/java/net/pterodactylus/sonitus/data/Connection.java
@@
-82,4
+82,12
@@
public abstract class Connection implements Runnable {
*/
protected abstract void feed(byte[] buffer) throws IOException;
*/
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;
+
}
}
diff --git
a/src/main/java/net/pterodactylus/sonitus/data/filter/ExternalFilter.java
b/src/main/java/net/pterodactylus/sonitus/data/filter/ExternalFilter.java
index
c3ab508
..
3b2b6b1
100644
(file)
--- a/
src/main/java/net/pterodactylus/sonitus/data/filter/ExternalFilter.java
+++ b/
src/main/java/net/pterodactylus/sonitus/data/filter/ExternalFilter.java
@@
-116,6
+116,11
@@
public abstract class ExternalFilter implements Filter {
protected void feed(byte[] buffer) throws IOException {
processInput.write(buffer);
}
protected void feed(byte[] buffer) throws IOException {
processInput.write(buffer);
}
+
+ @Override
+ protected void finish() throws IOException {
+ processInput.close();
+ }
}).start();
} catch (IOException ioe1) {
}).start();
} catch (IOException ioe1) {
diff --git
a/src/main/java/net/pterodactylus/sonitus/data/sink/AudioSink.java
b/src/main/java/net/pterodactylus/sonitus/data/sink/AudioSink.java
index
5d1ebbc
..
2ef61e0
100644
(file)
--- a/
src/main/java/net/pterodactylus/sonitus/data/sink/AudioSink.java
+++ b/
src/main/java/net/pterodactylus/sonitus/data/sink/AudioSink.java
@@
-64,6
+64,11
@@
public class AudioSink implements Sink {
sourceDataLine.write(buffer, 0, buffer.length);
logger.finest(String.format("AudioSink: Wrote %d Bytes.", buffer.length));
}
sourceDataLine.write(buffer, 0, buffer.length);
logger.finest(String.format("AudioSink: Wrote %d Bytes.", buffer.length));
}
+
+ @Override
+ protected void finish() {
+ sourceDataLine.stop();
+ }
}).start();
}
catch (LineUnavailableException lue1) {
}).start();
}
catch (LineUnavailableException lue1) {