summaryrefslogtreecommitdiffstats
path: root/jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java
diff options
context:
space:
mode:
authorBenoit Lamarche <benoitlamarche@google.com>2014-10-21 18:53:47 +0200
committerBenoit Lamarche <benoitlamarche@google.com>2014-10-21 18:57:16 +0200
commit19998fe9f1c86888e199ec994e4c3f13e90bd383 (patch)
treef50bb4d548d68ea867237a67aa4d6fbeae5c0c7a /jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java
parent5d51f919ec8edf869b63e189e18f02ef22ec851d (diff)
downloadtoolchain_jack-19998fe9f1c86888e199ec994e4c3f13e90bd383.zip
toolchain_jack-19998fe9f1c86888e199ec994e4c3f13e90bd383.tar.gz
toolchain_jack-19998fe9f1c86888e199ec994e4c3f13e90bd383.tar.bz2
Move stream suckers to SchedLib
This will allow for them to be used in the VFS. Also, they were duplicated. Change-Id: I15f146c7b3ff3a6740b23bf2f24c6eee55791ce5
Diffstat (limited to 'jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java')
-rw-r--r--jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java74
1 files changed, 0 insertions, 74 deletions
diff --git a/jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java b/jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java
deleted file mode 100644
index 3f74378..0000000
--- a/jack-tests/src/com/android/jack/test/util/BytesStreamSucker.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.jack.test.util;
-
-import com.google.common.io.NullOutputStream;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import javax.annotation.Nonnull;
-
-/**
- * Class that continuously read an {@link InputStream} and optionally could write the input in a
- * {@link OutputStream}.
- */
-public class BytesStreamSucker {
-
- private static final int BUFFER_SIZE = 4096;
-
- @Nonnull
- private final byte[] buffer = new byte[BUFFER_SIZE];
-
- @Nonnull
- private final InputStream is;
-
- @Nonnull
- private final OutputStream os;
-
- private final boolean toBeClose;
-
- public BytesStreamSucker(
- @Nonnull InputStream is, @Nonnull OutputStream os, boolean toBeClose) {
- this.is = is;
- this.os = os;
- this.toBeClose = toBeClose;
- }
-
- public BytesStreamSucker(@Nonnull InputStream is, @Nonnull OutputStream os) {
- this(is, os, false);
- }
-
- public BytesStreamSucker(@Nonnull InputStream is) {
- this(is, new NullOutputStream(), false);
- }
-
- public void suck() throws IOException {
- try {
- int bytesRead;
- while ((bytesRead = is.read(buffer)) >= 0) {
- os.write(buffer, 0, bytesRead);
- os.flush();
- }
- } finally {
- if (toBeClose) {
- os.close();
- }
- }
- }
-} \ No newline at end of file