1
0
mirror of https://github.com/square/okhttp.git synced 2026-01-18 20:40:58 +03:00

Merge pull request #718 from square/jwilson_0418_use_file_helpers

Use File helpers in Okio.
This commit is contained in:
Jake Wharton
2014-04-18 15:06:02 -07:00
6 changed files with 13 additions and 21 deletions

View File

@@ -20,9 +20,7 @@ import com.squareup.okhttp.Protocol;
import com.squareup.okhttp.internal.SslContextBuilder;
import com.squareup.okhttp.internal.Util;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Arrays;
@@ -31,6 +29,7 @@ import javax.net.ssl.SSLSocket;
import javax.net.ssl.SSLSocketFactory;
import okio.BufferedSink;
import okio.Okio;
import okio.Source;
import org.eclipse.jetty.npn.NextProtoNego;
import static com.squareup.okhttp.internal.Util.headerEntries;
@@ -128,20 +127,16 @@ public final class SpdyServer implements IncomingStreamHandler {
}
private void serveFile(SpdyStream stream, File file) throws IOException {
byte[] buffer = new byte[8192];
stream.reply(
headerEntries(":status", "200", ":version", "HTTP/1.1", "content-type", contentType(file)),
true);
InputStream in = new FileInputStream(file);
BufferedSink out = Okio.buffer(stream.getSink());
Source source = Okio.source(file);
try {
int count;
while ((count = in.read(buffer)) != -1) {
out.write(buffer, 0, count);
}
BufferedSink out = Okio.buffer(stream.getSink());
out.writeAll(source);
out.close();
} finally {
Util.closeQuietly(in);
Util.closeQuietly(out);
Util.closeQuietly(source);
}
}

View File

@@ -31,7 +31,6 @@ import com.squareup.okhttp.mockwebserver.RecordedRequest;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
@@ -1921,9 +1920,9 @@ public final class HttpResponseCacheTest {
}
private void writeFile(File directory, String file, String content) throws IOException {
OutputStream out = new FileOutputStream(new File(directory, file));
out.write(content.getBytes(Util.UTF_8));
out.close();
BufferedSink sink = Okio.buffer(Okio.sink(new File(directory, file)));
sink.writeUtf8(content);
sink.close();
}
/**

View File

@@ -45,7 +45,6 @@ import java.net.Proxy;
import java.net.ProxySelector;
import java.net.ResponseCache;
import java.net.SocketAddress;
import java.net.SocketTimeoutException;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
@@ -2083,7 +2082,7 @@ public final class URLConnectionTest {
try {
in.read(); // if Content-Length was accurate, this would return -1 immediately
fail();
} catch (SocketTimeoutException expected) {
} catch (IOException expected) {
}
}

View File

@@ -18,7 +18,6 @@ package com.squareup.okhttp;
import com.squareup.okhttp.internal.Platform;
import com.squareup.okhttp.internal.Util;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
@@ -182,7 +181,7 @@ public final class Request {
@Override public void writeTo(BufferedSink sink) throws IOException {
Source source = null;
try {
source = Okio.source(new FileInputStream(file));
source = Okio.source(file);
sink.writeAll(source);
} finally {
Util.closeQuietly(source);

View File

@@ -241,7 +241,7 @@ public final class DiskLruCache implements Closeable {
}
private void readJournal() throws IOException {
BufferedSource source = Okio.buffer(Okio.source(new FileInputStream(journalFile)));
BufferedSource source = Okio.buffer(Okio.source(journalFile));
try {
String magic = source.readUtf8LineStrict();
String version = source.readUtf8LineStrict();

View File

@@ -86,7 +86,7 @@ public class SampleServer extends Dispatcher {
private Buffer fileToBytes(File file) throws IOException {
Buffer result = new Buffer();
result.writeAll(Okio.source(new FileInputStream(file)));
result.writeAll(Okio.source(file));
return result;
}