aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/util/Streams.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/util/Streams.java')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/util/Streams.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/util/Streams.java b/src/main/java/org/zwobble/mammoth/internal/util/Streams.java
new file mode 100644
index 0000000..ac0f165
--- /dev/null
+++ b/src/main/java/org/zwobble/mammoth/internal/util/Streams.java
@@ -0,0 +1,27 @@
+package org.zwobble.mammoth.internal.util;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+
+public class Streams {
+ private Streams() {}
+
+ public static void copy(InputStream source, OutputStream destination) throws IOException {
+ byte[] buffer = new byte[4096];
+ while (true) {
+ int bytesRead = source.read(buffer);
+ if (bytesRead == -1) {
+ return;
+ }
+ destination.write(buffer, 0, bytesRead);
+ }
+ }
+
+ public static byte[] toByteArray(InputStream stream) throws IOException {
+ ByteArrayOutputStream output = new ByteArrayOutputStream();
+ copy(stream, output);
+ return output.toByteArray();
+ }
+}