Skip to content

Commit 3308fbd

Browse files
committed
adapting readAllBytes for java 8
1 parent 619963e commit 3308fbd

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

google-cloud-bigtable/src/test/java/com/google/cloud/bigtable/gaxx/grpc/fallback/GcpFallbackChannelTest.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
import io.opentelemetry.sdk.metrics.export.MetricExporter;
7070
import io.opentelemetry.sdk.metrics.export.PeriodicMetricReader;
7171
import java.io.ByteArrayInputStream;
72+
import java.io.ByteArrayOutputStream;
7273
import java.io.IOException;
7374
import java.io.InputStream;
7475
import java.time.Duration;
@@ -103,11 +104,21 @@ public InputStream stream(Object value) {
103104
@Override
104105
public Object parse(InputStream stream) {
105106
try {
106-
return stream.readAllBytes().toString();
107+
return readAllBytesFromStream(stream).toString();
107108
} catch (IOException e) {
108109
return new Object();
109110
}
110111
}
112+
113+
static byte[] readAllBytesFromStream(InputStream is) throws IOException {
114+
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
115+
int bytesRead;
116+
byte[] data = new byte[4096];
117+
while ((bytesRead = is.read(data, 0, data.length)) != -1) {
118+
buffer.write(data, 0, bytesRead);
119+
}
120+
return buffer.toByteArray();
121+
}
111122
}
112123

113124
private final DummyMarshaller<Object> dummyMarshaller = new DummyMarshaller<>();

0 commit comments

Comments
 (0)