make EventThread public

This commit is contained in:
Naoyuki Kanezawa
2013-05-07 00:18:45 +09:00
parent 997eb18e21
commit 6a3f2d8415
5 changed files with 20 additions and 25 deletions

View File

@@ -7,9 +7,9 @@ import java.util.concurrent.ThreadFactory;
/** /**
* The main thread for Engine.IO Client. * The main thread for event loop.
*/ */
class EventThread extends Thread { public class EventThread extends Thread {
private static final ExecutorService service = Executors.newSingleThreadExecutor(new ThreadFactory() { private static final ExecutorService service = Executors.newSingleThreadExecutor(new ThreadFactory() {
@Override @Override

View File

@@ -55,7 +55,7 @@ public abstract class Transport extends Emitter {
} }
public Transport open() { public Transport open() {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
if (Transport.this.readyState == ReadyState.CLOSED || Transport.this.readyState == null) { if (Transport.this.readyState == ReadyState.CLOSED || Transport.this.readyState == null) {
@@ -68,7 +68,7 @@ public abstract class Transport extends Emitter {
} }
public Transport close() { public Transport close() {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
if (Transport.this.readyState == ReadyState.OPENING || Transport.this.readyState == ReadyState.OPEN) { if (Transport.this.readyState == ReadyState.OPENING || Transport.this.readyState == ReadyState.OPEN) {
@@ -81,7 +81,7 @@ public abstract class Transport extends Emitter {
} }
public void send(final Packet[] packets) { public void send(final Packet[] packets) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
if (Transport.this.readyState == ReadyState.OPEN) { if (Transport.this.readyState == ReadyState.OPEN) {
@@ -118,14 +118,6 @@ public abstract class Transport extends Emitter {
abstract protected void doClose(); abstract protected void doClose();
protected static void exec(Runnable task) {
EventThread.exec(task);
}
protected static void nextTick(Runnable task) {
EventThread.nextTick(task);
}
public static class Options { public static class Options {

View File

@@ -1,6 +1,7 @@
package com.github.nkzawa.engineio.client.transports; package com.github.nkzawa.engineio.client.transports;
import com.github.nkzawa.engineio.client.EventThread;
import com.github.nkzawa.engineio.client.Transport; import com.github.nkzawa.engineio.client.Transport;
import com.github.nkzawa.engineio.client.Util; import com.github.nkzawa.engineio.client.Util;
import com.github.nkzawa.engineio.parser.Packet; import com.github.nkzawa.engineio.parser.Packet;
@@ -33,7 +34,7 @@ abstract public class Polling extends Transport {
} }
public void pause(final Runnable onPause) { public void pause(final Runnable onPause) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
final Polling self = Polling.this; final Polling self = Polling.this;
@@ -50,7 +51,7 @@ abstract public class Polling extends Transport {
}; };
if (Polling.this.polling || !Polling.this.writable) { if (Polling.this.polling || !Polling.this.writable) {
final int[] total = new int[] {0}; final int[] total = new int[]{0};
if (Polling.this.polling) { if (Polling.this.polling) {
logger.fine("we are currently polling - waiting to pause"); logger.fine("we are currently polling - waiting to pause");

View File

@@ -2,6 +2,7 @@ package com.github.nkzawa.engineio.client.transports;
import com.github.nkzawa.emitter.Emitter; import com.github.nkzawa.emitter.Emitter;
import com.github.nkzawa.engineio.client.EventThread;
import java.io.*; import java.io.*;
import java.net.HttpURLConnection; import java.net.HttpURLConnection;
@@ -42,7 +43,7 @@ public class PollingXHR extends Polling {
req.on(Request.EVENT_SUCCESS, new Listener() { req.on(Request.EVENT_SUCCESS, new Listener() {
@Override @Override
public void call(Object... args) { public void call(Object... args) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
fn.run(); fn.run();
@@ -53,7 +54,7 @@ public class PollingXHR extends Polling {
req.on(Request.EVENT_ERROR, new Listener() { req.on(Request.EVENT_ERROR, new Listener() {
@Override @Override
public void call(final Object... args) { public void call(final Object... args) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
Exception err = args.length > 0 && args[0] instanceof Exception ? (Exception)args[0] : null; Exception err = args.length > 0 && args[0] instanceof Exception ? (Exception)args[0] : null;
@@ -73,7 +74,7 @@ public class PollingXHR extends Polling {
req.on(Request.EVENT_DATA, new Listener() { req.on(Request.EVENT_DATA, new Listener() {
@Override @Override
public void call(final Object... args) { public void call(final Object... args) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
String data = args.length > 0 ? (String) args[0] : null; String data = args.length > 0 ? (String) args[0] : null;
@@ -85,7 +86,7 @@ public class PollingXHR extends Polling {
req.on(Request.EVENT_ERROR, new Listener() { req.on(Request.EVENT_ERROR, new Listener() {
@Override @Override
public void call(final Object... args) { public void call(final Object... args) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
Exception err = args.length > 0 && args[0] instanceof Exception ? (Exception) args[0] : null; Exception err = args.length > 0 && args[0] instanceof Exception ? (Exception) args[0] : null;

View File

@@ -1,6 +1,7 @@
package com.github.nkzawa.engineio.client.transports; package com.github.nkzawa.engineio.client.transports;
import com.github.nkzawa.engineio.client.EventThread;
import com.github.nkzawa.engineio.client.Transport; import com.github.nkzawa.engineio.client.Transport;
import com.github.nkzawa.engineio.client.Util; import com.github.nkzawa.engineio.client.Util;
import com.github.nkzawa.engineio.parser.Packet; import com.github.nkzawa.engineio.parser.Packet;
@@ -44,7 +45,7 @@ public class WebSocket extends Transport {
this.socket = new WebSocketClient(new URI(this.uri()), new Draft_17()) { this.socket = new WebSocketClient(new URI(this.uri()), new Draft_17()) {
@Override @Override
public void onOpen(ServerHandshake serverHandshake) { public void onOpen(ServerHandshake serverHandshake) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
self.onOpen(); self.onOpen();
@@ -53,7 +54,7 @@ public class WebSocket extends Transport {
} }
@Override @Override
public void onClose(int i, String s, boolean b) { public void onClose(int i, String s, boolean b) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
self.onClose(); self.onClose();
@@ -62,7 +63,7 @@ public class WebSocket extends Transport {
} }
@Override @Override
public void onMessage(final String s) { public void onMessage(final String s) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
self.onData(s); self.onData(s);
@@ -71,7 +72,7 @@ public class WebSocket extends Transport {
} }
@Override @Override
public void onError(final Exception e) { public void onError(final Exception e) {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
self.onError("websocket error", e); self.onError("websocket error", e);
@@ -104,7 +105,7 @@ public class WebSocket extends Transport {
this.bufferedAmountId = this.drainScheduler.scheduleAtFixedRate(new Runnable() { this.bufferedAmountId = this.drainScheduler.scheduleAtFixedRate(new Runnable() {
@Override @Override
public void run() { public void run() {
exec(new Runnable() { EventThread.exec(new Runnable() {
@Override @Override
public void run() { public void run() {
if (!self.socket.getConnection().hasBufferedData()) { if (!self.socket.getConnection().hasBufferedData()) {
@@ -116,7 +117,7 @@ public class WebSocket extends Transport {
} }
}, 50, 50, TimeUnit.MILLISECONDS); }, 50, 50, TimeUnit.MILLISECONDS);
} else { } else {
nextTick(ondrain); EventThread.nextTick(ondrain);
} }
} }