本文整理汇总了Java中com.koushikdutta.async.Util类的典型用法代码示例。如果您正苦于以下问题:Java Util类的具体用法?Java Util怎么用?Java Util使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Util类属于com.koushikdutta.async包,在下文中一共展示了Util类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: addAndEmit
import com.koushikdutta.async.Util; //导入依赖的package包/类
private void addAndEmit(ByteBufferList bb) {
if (pending == null) {
Util.emitAllData(this, bb);
if (bb.remaining() > 0) {
pending = new LinkedList<ByteBufferList>();
pending.add(bb);
}
return;
}
while (!isPaused()) {
bb = pending.remove();
Util.emitAllData(this, bb);
if (bb.remaining() > 0)
pending.add(0, bb);
}
if (pending.size() == 0)
pending = null;
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:20,代码来源:WebSocketImpl.java
示例2: proxy
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void proxy(final AsyncHttpResponse remoteResponse) {
code(remoteResponse.code());
remoteResponse.headers().removeAll("Transfer-Encoding");
remoteResponse.headers().removeAll("Content-Encoding");
remoteResponse.headers().removeAll("Connection");
getHeaders().addAll(remoteResponse.headers());
// TODO: remove?
remoteResponse.headers().set("Connection", "close");
Util.pump(remoteResponse, this, new CompletedCallback() {
@Override
public void onCompleted(Exception ex) {
remoteResponse.setEndCallback(new NullCompletedCallback());
remoteResponse.setDataCallback(new DataCallback.NullDataCallback());
end();
}
});
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:19,代码来源:AsyncHttpServerResponseImpl.java
示例3: onResponseComplete
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void onResponseComplete(OnResponseCompleteDataOnRequestSentData data) {
CacheData cacheData = data.state.get("cache-data");
if (cacheData != null && cacheData.snapshot != null)
StreamUtility.closeQuietly(cacheData.snapshot);
CachedSocket cachedSocket = Util.getWrappedSocket(data.socket, CachedSocket.class);
if (cachedSocket != null)
StreamUtility.closeQuietly((cachedSocket.cacheResponse).getBody());
BodyCacher cacher = data.state.get("body-cacher");
if (cacher != null) {
if (data.exception != null)
cacher.abort();
else
cacher.commit();
}
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:19,代码来源:ResponseCacheMiddleware.java
示例4: testPushParserUntil
import com.koushikdutta.async.Util; //导入依赖的package包/类
public void testPushParserUntil() {
valRead = 0;
FilteredDataEmitter mock = new FilteredDataEmitter() {
@Override
public boolean isPaused() {
return false;
}
};
new PushParser(mock)
.until((byte)0, new DataCallback.NullDataCallback())
.readInt(new PushParser.ParseCallback<Integer>() {
public void parsed(Integer arg) {
valRead = arg;
}
});
byte[] bytes = new byte[] { 5, 5, 5, 5, 0, 10, 5, 5, 5 };
Util.emitAllData(mock, new ByteBufferList(bytes));
assertEquals(valRead, 0x0A050505);
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:20,代码来源:ByteUtilTests.java
示例5: testPushParserTapUntil
import com.koushikdutta.async.Util; //导入依赖的package包/类
public void testPushParserTapUntil() {
valRead = 0;
FilteredDataEmitter mock = new FilteredDataEmitter() {
@Override
public boolean isPaused() {
return false;
}
};
new PushParser(mock)
.until((byte)0, new DataCallback.NullDataCallback())
.readInt()
.tap(new TapCallback() {
public void parsed(int arg) {
valRead = arg;
}
});
byte[] bytes = new byte[] { 5, 5, 5, 5, 0, 10, 5, 5, 5 };
Util.emitAllData(mock, new ByteBufferList(bytes));
assertEquals(valRead, 0x0A050505);
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:21,代码来源:ByteUtilTests.java
示例6: directory
import com.koushikdutta.async.Util; //导入依赖的package包/类
public void directory(Context context, String regex, final String assetPath) {
final Context _context = context.getApplicationContext();
addAction("GET", regex, new HttpServerRequestCallback() {
@Override
public void onRequest(AsyncHttpServerRequest request, final AsyncHttpServerResponse response) {
String path = request.getMatcher().replaceAll("");
InputStream is = getAssetStream(_context, assetPath + path);
if (is == null) {
response.responseCode(404);
response.end();
return;
}
response.responseCode(200);
response.getHeaders().getHeaders().add("Content-Type", getContentType(path));
Util.pump(is, response, new CompletedCallback() {
@Override
public void onCompleted(Exception ex) {
response.end();
}
});
}
});
}
开发者ID:xiaoshutong,项目名称:AndroidNio,代码行数:24,代码来源:AsyncHttpServer.java
示例7: run
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void run() {
try {
if (!pending.isEmpty()) {
getServer().run(new Runnable() {
@Override
public void run() {
Util.emitAllData(InputStreamDataEmitter.this, pending);
}
});
if (!pending.isEmpty())
return;
}
ByteBuffer b;
do {
b = ByteBufferList.obtain(Math.min(Math.max(mToAlloc, 2 << 11), 256 * 1024));
int read;
if (-1 == (read = inputStream.read(b.array()))) {
report(null);
return;
}
mToAlloc = read * 2;
b.limit(read);
pending.add(b);
getServer().run(new Runnable() {
@Override
public void run() {
Util.emitAllData(InputStreamDataEmitter.this, pending);
}
});
}
while (pending.remaining() == 0 && !isPaused());
}
catch (Exception e) {
report(e);
}
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:38,代码来源:InputStreamDataEmitter.java
示例8: data
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void data(boolean inFinished, int streamId, ByteBufferList source) {
if (pushedStream(streamId)) {
throw new AssertionError("push");
// pushDataLater(streamId, source, length, inFinished);
// return;
}
SpdySocket socket = sockets.get(streamId);
if (socket == null) {
try {
writer.rstStream(streamId, ErrorCode.INVALID_STREAM);
}
catch (IOException e) {
throw new AssertionError(e);
}
source.recycle();
return;
}
int length = source.remaining();
source.get(socket.pending);
socket.updateWindowRead(length);
Util.emitAllData(socket, socket.pending);
if (inFinished) {
sockets.remove(streamId);
socket.close();
Util.end(socket, null);
}
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:29,代码来源:AsyncSpdyConnection.java
示例9: goAway
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void goAway(int lastGoodStreamId, ErrorCode errorCode, ByteString debugData) {
shutdown = true;
// Fail all streams created after the last good stream ID.
for (Iterator<Map.Entry<Integer, SpdySocket>> i = sockets.entrySet().iterator();
i.hasNext(); ) {
Map.Entry<Integer, SpdySocket> entry = i.next();
int streamId = entry.getKey();
if (streamId > lastGoodStreamId && entry.getValue().isLocallyInitiated()) {
Util.end(entry.getValue(), new IOException(ErrorCode.REFUSED_STREAM.toString()));
i.remove();
}
}
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:16,代码来源:AsyncSpdyConnection.java
示例10: error
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void error(Exception e) {
socket.close();
for (Iterator<Map.Entry<Integer, SpdySocket>> i = sockets.entrySet().iterator(); i.hasNext();) {
Map.Entry<Integer, SpdySocket> entry = i.next();
Util.end(entry.getValue(), e);
i.remove();
}
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:10,代码来源:AsyncSpdyConnection.java
示例11: testTapCallback
import com.koushikdutta.async.Util; //导入依赖的package包/类
public void testTapCallback() {
readInt = 0;
readByte = 0;
readString = "";
FilteredDataEmitter mock = new FilteredDataEmitter() {
@Override
public boolean isPaused() {
return false;
}
};
new PushParser(mock)
.readInt()
.readByte()
.readString()
.tap(new TapCallback() {
void tap(int i, byte b, String s) {
readInt = i;
readByte = b;
readString = s;
}
});
byte[] bytes = new byte[] { 10, 5, 5, 5, 3, 0, 0, 0, 4, 116, 101, 115, 116 };
Util.emitAllData(mock, new ByteBufferList(bytes));
assertEquals(readInt, 0x0A050505);
assertEquals(readByte, (byte) 3);
assertEquals(readString, "test");
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:30,代码来源:ByteUtilTests.java
示例12: go
import com.koushikdutta.async.Util; //导入依赖的package包/类
public void go(String ip, int port, String msg, CallBack callBack) {
mCallBack = callBack;
Looper.prepare();
handler = new Handler();
cancellable = AsyncServer.getDefault().connectSocket(ip, port, (ex, socket) -> {
if (ex != null) {
handler.removeCallbacks(runnable);
mCallBack.onConnectError(ex.getMessage());
return;
}
socket.setDataCallback((emitter, bb) -> L.iTag("TcpClient", new String(bb.getAllByteArray())));
socket.setClosedCallback(ex1 -> {
if (ex1 != null) {
L.iTag("TcpClient", "setClosedCallback出错");
return;
}
L.iTag("TcpClient", "setClosedCallback");
});
socket.setEndCallback(ex12 -> {
if (ex12 != null) {
L.iTag("TcpClient", "setEndCallback出错");
return;
}
L.iTag("TcpClient", "setEndCallback");
});
socket.setWriteableCallback(() -> Log.d("TcpClient", "onWriteable"));
byte[] dataContent = msg.getBytes();
byte[] end = new byte[]{0x0a};
byte[] start = new byte[]{0x0a};
byte[] data = new byte[dataContent.length + start.length + end.length];
try {
System.arraycopy(start, 0, data, 0, start.length);
System.arraycopy(dataContent, 0, data, start.length, dataContent.length);
System.arraycopy(end, 0, data, start.length + dataContent.length, end.length);
} catch (Exception e) {
L.logFile(e.getMessage() + "\n" + e.getStackTrace().toString());
data = dataContent;
}
L.iTag("TcpClient", data.toString());
L.i("TcpClient", data);
Util.writeAll(socket, data, ex13 -> {
if (ex13 != null) {
L.iTag("TcpClient", "writeAll出错");
handler.removeCallbacks(runnable);
mCallBack.onWriteError(ex13.getMessage());
return;
}
handler.removeCallbacks(runnable);
mCallBack.onSuccess();
L.iTag("TcpClient", "writeAll");
});
});
handler.removeCallbacks(runnable);
handler.postDelayed(runnable, 5000);
Looper.loop();
}
开发者ID:tututututututu,项目名称:BaseCore,代码行数:63,代码来源:TcpClient.java
示例13: write
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void write(DataSink sink, ByteBufferList value, CompletedCallback completed) {
Util.writeAll(sink, value, completed);
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:5,代码来源:ByteBufferListParser.java
示例14: write
import com.koushikdutta.async.Util; //导入依赖的package包/类
@Override
public void write(AsyncHttpRequest request, DataSink sink, CompletedCallback completed) {
Util.pump(file, sink, completed);
}
开发者ID:jacklongway,项目名称:LiteSDK,代码行数:5,代码来源:FileBody.java
注:本文中的com.koushikdutta.async.Util类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论