okhttp 2.7.0
This commit is contained in:
2
pom.xml
2
pom.xml
@@ -49,7 +49,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.squareup.okhttp</groupId>
|
<groupId>com.squareup.okhttp</groupId>
|
||||||
<artifactId>okhttp-ws</artifactId>
|
<artifactId>okhttp-ws</artifactId>
|
||||||
<version>2.5.0</version>
|
<version>2.7.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.json</groupId>
|
<groupId>org.json</groupId>
|
||||||
|
|||||||
@@ -1,29 +1,35 @@
|
|||||||
package io.socket.engineio.client.transports;
|
package io.socket.engineio.client.transports;
|
||||||
|
|
||||||
|
|
||||||
|
import com.squareup.okhttp.OkHttpClient;
|
||||||
|
import com.squareup.okhttp.Request;
|
||||||
|
import com.squareup.okhttp.RequestBody;
|
||||||
|
import com.squareup.okhttp.Response;
|
||||||
|
import com.squareup.okhttp.ResponseBody;
|
||||||
|
import com.squareup.okhttp.ws.WebSocketCall;
|
||||||
|
import com.squareup.okhttp.ws.WebSocketListener;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.TreeMap;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
import javax.net.ssl.SSLSocketFactory;
|
||||||
|
|
||||||
import io.socket.engineio.client.Transport;
|
import io.socket.engineio.client.Transport;
|
||||||
import io.socket.engineio.parser.Packet;
|
import io.socket.engineio.parser.Packet;
|
||||||
import io.socket.engineio.parser.Parser;
|
import io.socket.engineio.parser.Parser;
|
||||||
import io.socket.parseqs.ParseQS;
|
import io.socket.parseqs.ParseQS;
|
||||||
import io.socket.thread.EventThread;
|
import io.socket.thread.EventThread;
|
||||||
import com.squareup.okhttp.OkHttpClient;
|
|
||||||
import com.squareup.okhttp.Request;
|
|
||||||
import com.squareup.okhttp.Response;
|
|
||||||
import com.squareup.okhttp.ws.WebSocket.PayloadType;
|
|
||||||
import com.squareup.okhttp.ws.WebSocketCall;
|
|
||||||
import com.squareup.okhttp.ws.WebSocketListener;
|
|
||||||
import io.socket.utf8.UTF8Exception;
|
import io.socket.utf8.UTF8Exception;
|
||||||
import okio.Buffer;
|
import okio.Buffer;
|
||||||
import okio.BufferedSource;
|
|
||||||
|
|
||||||
import javax.net.ssl.SSLSocketFactory;
|
import static com.squareup.okhttp.ws.WebSocket.BINARY;
|
||||||
import java.io.IOException;
|
import static com.squareup.okhttp.ws.WebSocket.TEXT;
|
||||||
import java.util.*;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
import java.util.logging.Logger;
|
|
||||||
|
|
||||||
import static com.squareup.okhttp.ws.WebSocket.PayloadType.BINARY;
|
|
||||||
import static com.squareup.okhttp.ws.WebSocket.PayloadType.TEXT;
|
|
||||||
|
|
||||||
public class WebSocket extends Transport {
|
public class WebSocket extends Transport {
|
||||||
|
|
||||||
@@ -81,24 +87,21 @@ public class WebSocket extends Transport {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onMessage(BufferedSource payload, final PayloadType type) throws IOException {
|
public void onMessage(final ResponseBody responseBody) throws IOException {
|
||||||
Object data = null;
|
Object data = null;
|
||||||
switch (type) {
|
if (responseBody.contentType() == TEXT) {
|
||||||
case TEXT:
|
data = responseBody.string();
|
||||||
data = payload.readUtf8();
|
} else if (responseBody.contentType() == BINARY) {
|
||||||
break;
|
data = responseBody.source().readByteArray();
|
||||||
case BINARY:
|
} else {
|
||||||
data = payload.readByteArray();
|
EventThread.exec(new Runnable() {
|
||||||
break;
|
@Override
|
||||||
default:
|
public void run() {
|
||||||
EventThread.exec(new Runnable() {
|
self.onError("Unknown payload type: " + responseBody.contentType(), new IllegalStateException());
|
||||||
@Override
|
}
|
||||||
public void run() {
|
});
|
||||||
self.onError("Unknown payload type: " + type, new IllegalStateException());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
payload.close();
|
responseBody.source().close();
|
||||||
final Object finalData = data;
|
final Object finalData = data;
|
||||||
EventThread.exec(new Runnable() {
|
EventThread.exec(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
@@ -152,9 +155,9 @@ public class WebSocket extends Transport {
|
|||||||
public void call(Object packet) {
|
public void call(Object packet) {
|
||||||
try {
|
try {
|
||||||
if (packet instanceof String) {
|
if (packet instanceof String) {
|
||||||
self.ws.sendMessage(TEXT, new Buffer().writeUtf8((String) packet));
|
self.ws.sendMessage(RequestBody.create(TEXT, (String) packet));
|
||||||
} else if (packet instanceof byte[]) {
|
} else if (packet instanceof byte[]) {
|
||||||
self.ws.sendMessage(BINARY, new Buffer().write((byte[]) packet));
|
self.ws.sendMessage(RequestBody.create(BINARY, (byte[]) packet));
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
logger.fine("websocket closed before onclose event");
|
logger.fine("websocket closed before onclose event");
|
||||||
|
|||||||
Reference in New Issue
Block a user