summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Fankhauser hiddenalpha.ch2022-12-29 23:14:07 +0100
committerAndreas Fankhauser hiddenalpha.ch2022-12-29 23:14:07 +0100
commit0a1e0e80aa432f078d0a962642e19681d9a41579 (patch)
treee8f4be5ef68c847f5ce654dda70af1da3074cc24
parent2d5a068b88f814ff9747e53cb539a4a39cdf51f2 (diff)
downloadxtra4j-0a1e0e80aa432f078d0a962642e19681d9a41579.zip
xtra4j-0a1e0e80aa432f078d0a962642e19681d9a41579.tar.gz
Add IgnoreCloseInputStream and IgnoreFlushOStream
-rw-r--r--xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreCloseInputStream.java21
-rw-r--r--xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreFlushOStream.java23
2 files changed, 44 insertions, 0 deletions
diff --git a/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreCloseInputStream.java b/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreCloseInputStream.java
new file mode 100644
index 0000000..9a73da8
--- /dev/null
+++ b/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreCloseInputStream.java
@@ -0,0 +1,21 @@
+package ch.hiddenalpha.xtra4j.octetstream;
+
+import java.io.FilterInputStream;
+import java.io.InputStream;
+
+
+/**
+ * Suppresses to close the underlying stream when close gets called.
+ */
+public class IgnoreCloseInputStream extends FilterInputStream {
+
+ public IgnoreCloseInputStream( InputStream in ) {
+ super(in);
+ }
+
+ @Override
+ public void close() {
+ // NOOPe! Do NOT close.
+ }
+
+}
diff --git a/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreFlushOStream.java b/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreFlushOStream.java
new file mode 100644
index 0000000..ac5032f
--- /dev/null
+++ b/xtra4j-misc/src/main/java/ch/hiddenalpha/xtra4j/octetstream/IgnoreFlushOStream.java
@@ -0,0 +1,23 @@
+package ch.hiddenalpha.xtra4j.octetstream;
+
+import java.io.FilterOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+
+
+/**
+ * {@link OutputStream} decorator which stops propagation of
+ * {@link OutputStream#flush()} propagation.
+ */
+public class IgnoreFlushOStream extends FilterOutputStream {
+
+ public IgnoreFlushOStream( OutputStream out ){
+ super(out);
+ }
+
+ @Override
+ public void flush() throws IOException {
+ // NOOPe!
+ }
+
+}