Skip to content
GitLab
    • Explore Projects Groups Snippets
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • A AndroidAsync
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 333
    • Issues 333
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 19
    • Merge requests 19
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Koushik Dutta
  • AndroidAsync
  • Merge requests
  • !492

fix #379

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Sergei Krupin requested to merge github/fork/eps1kk/master into master 8 years ago
  • Overview 0
  • Commits 1
  • Pipelines 1
  • Changes 6

remove mWritePendings duplicating in one ws socket connection

Compare
  • version 1
    5f5bf97c
    2 years ago

  • master (base)

and
  • latest version
    5f5bf97c
    1 commit, 2 years ago

  • version 1
    5f5bf97c
    1 commit, 2 years ago

6 files
+ 36
- 11

    Preferences

    File browser
    Compare changes
AndroidAsync/src/co‎m/koushikdutta/async‎
ht‎tp‎
fil‎ter‎
ChunkedOutpu‎tFilter.java‎ +5 -0
ser‎ver‎
AsyncHttpServe‎rResponse.java‎ +3 -0
AsyncHttpServerR‎esponseImpl.java‎ +10 -7
WebSocket‎Impl.java‎ +5 -2
BufferedDa‎taSink.java‎ +7 -1
FilteredDa‎taSink.java‎ +6 -1
AndroidAsync/src/com/koushikdutta/async/http/filter/ChunkedOutputFilter.java
+ 5
- 0
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


@@ -2,6 +2,7 @@ package com.koushikdutta.async.http.filter;
import java.nio.ByteBuffer;
import com.koushikdutta.async.AsyncSocket;
import com.koushikdutta.async.ByteBufferList;
import com.koushikdutta.async.DataSink;
import com.koushikdutta.async.FilteredDataSink;
@@ -11,6 +12,10 @@ public class ChunkedOutputFilter extends FilteredDataSink {
super(sink);
}
public ChunkedOutputFilter(AsyncSocket mSocket, ByteBufferList mWritePenings) {
super(mSocket, mWritePenings);
}
@Override
public ByteBufferList filter(ByteBufferList bb) {
String chunkLen = Integer.toString(bb.remaining(), 16) + "\r\n";
AndroidAsync/src/com/koushikdutta/async/http/filter/ChunkedOutputFilter.java
+ 5
- 0
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


@@ -2,6 +2,7 @@ package com.koushikdutta.async.http.filter;
import java.nio.ByteBuffer;
import com.koushikdutta.async.AsyncSocket;
import com.koushikdutta.async.ByteBufferList;
import com.koushikdutta.async.DataSink;
import com.koushikdutta.async.FilteredDataSink;
@@ -11,6 +12,10 @@ public class ChunkedOutputFilter extends FilteredDataSink {
super(sink);
}
public ChunkedOutputFilter(AsyncSocket mSocket, ByteBufferList mWritePenings) {
super(mSocket, mWritePenings);
}
@Override
public ByteBufferList filter(ByteBufferList bb) {
String chunkLen = Integer.toString(bb.remaining(), 16) + "\r\n";
AndroidAsync/src/com/koushikdutta/async/http/server/AsyncHttpServerResponse.java
+ 3
- 0
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


Conflict: This file was modified in both the source and target branches. Ask someone with write access to resolve it.
package com.koushikdutta.async.http.server;
import com.koushikdutta.async.AsyncSocket;
import com.koushikdutta.async.ByteBufferList;
import com.koushikdutta.async.DataSink;
import com.koushikdutta.async.callback.CompletedCallback;
import com.koushikdutta.async.http.AsyncHttpResponse;
@@ -34,4 +35,6 @@ public interface AsyncHttpServerResponse extends DataSink, CompletedCallback {
*/
public void onCompleted(Exception ex);
public AsyncSocket getSocket();
void writeHead(ByteBufferList mWritePendings);
}
AndroidAsync/src/com/koushikdutta/async/http/server/AsyncHttpServerResponseImpl.java
+ 10
- 7
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


Conflict: This file was modified in both the source and target branches. Ask someone with write access to resolve it.
@@ -2,11 +2,7 @@ package com.koushikdutta.async.http.server;
import android.text.TextUtils;
import com.koushikdutta.async.AsyncServer;
import com.koushikdutta.async.AsyncSocket;
import com.koushikdutta.async.ByteBufferList;
import com.koushikdutta.async.DataSink;
import com.koushikdutta.async.Util;
import com.koushikdutta.async.*;
import com.koushikdutta.async.callback.CompletedCallback;
import com.koushikdutta.async.callback.DataCallback;
import com.koushikdutta.async.callback.WritableCallback;
@@ -31,6 +27,7 @@ import java.util.Locale;
public class AsyncHttpServerResponseImpl implements AsyncHttpServerResponse {
private Headers mRawHeaders = new Headers();
private long mContentLength = -1;
private ByteBufferList mWritePendings;
@Override
public Headers getHeaders() {
@@ -108,12 +105,12 @@ public class AsyncHttpServerResponseImpl implements AsyncHttpServerResponse {
return;
}
if (isChunked) {
ChunkedOutputFilter chunked = new ChunkedOutputFilter(mSocket);
ChunkedOutputFilter chunked = new ChunkedOutputFilter(mSocket, mWritePendings);
chunked.setMaxBuffer(0);
mSink = chunked;
}
else {
mSink = mSocket;
mSink = new BufferedDataSink(mSocket, mWritePendings);
}
mSink.setClosedCallback(closedCallback);
@@ -192,6 +189,12 @@ public class AsyncHttpServerResponseImpl implements AsyncHttpServerResponse {
initFirstWrite();
}
@Override
public void writeHead(ByteBufferList mWritePendings) {
this.mWritePendings = mWritePendings;
writeHead();
}
@Override
public void setContentType(String contentType) {
mRawHeaders.set("Content-Type", contentType);
AndroidAsync/src/com/koushikdutta/async/http/WebSocketImpl.java
+ 5
- 2
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


@@ -21,6 +21,9 @@ import java.util.LinkedList;
import java.util.UUID;
public class WebSocketImpl implements WebSocket {
private final ByteBufferList mWritePendings = new ByteBufferList();
@Override
public void end() {
mSocket.end();
@@ -136,7 +139,7 @@ public class WebSocketImpl implements WebSocket {
response.getHeaders().set("Sec-WebSocket-Protocol", protocol);
// if (origin != null)
// response.getHeaders().getHeaders().set("Access-Control-Allow-Origin", "http://" + origin);
response.writeHead();
response.writeHead(mWritePendings);
setupParser(false, false);
}
@@ -159,7 +162,7 @@ public class WebSocketImpl implements WebSocket {
public WebSocketImpl(AsyncSocket socket) {
mSocket = socket;
mSink = new BufferedDataSink(mSocket);
mSink = new BufferedDataSink(mSocket, mWritePendings);
}
public static WebSocket finishHandshake(Headers requestHeaders, AsyncHttpResponse response) {
AndroidAsync/src/com/koushikdutta/async/BufferedDataSink.java
+ 7
- 1
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


Conflict: This file was modified in both the source and target branches. Ask someone with write access to resolve it.
@@ -8,9 +8,15 @@ import java.nio.ByteBuffer;
public class BufferedDataSink implements DataSink {
DataSink mDataSink;
public BufferedDataSink(DataSink datasink) {
mPendingWrites = new ByteBufferList();
setDataSink(datasink);
}
public BufferedDataSink(AsyncSocket mSocket, ByteBufferList byteBufferList) {
mPendingWrites = byteBufferList;
setDataSink(mSocket);
}
public boolean isBuffering() {
return mPendingWrites.hasRemaining() || forceBuffering;
}
@@ -52,7 +58,7 @@ public class BufferedDataSink implements DataSink {
mWritable.onWriteable();
}
ByteBufferList mPendingWrites = new ByteBufferList();
ByteBufferList mPendingWrites;
@Override
public void write(ByteBufferList bb) {
AndroidAsync/src/com/koushikdutta/async/FilteredDataSink.java
+ 6
- 1
  • View file @ 5f5bf97c

  • Edit in single-file editor

  • Open in Web IDE


@@ -5,7 +5,12 @@ public class FilteredDataSink extends BufferedDataSink {
super(sink);
setMaxBuffer(0);
}
public FilteredDataSink(AsyncSocket mSocket, ByteBufferList mWritePendings) {
super(mSocket, mWritePendings);
setMaxBuffer(0);
}
public ByteBufferList filter(ByteBufferList bb) {
return bb;
}
0 Assignees
None
Assign to
0 Reviewers
None
Request review from
Labels
0
None
0
None
    Assign labels
  • Manage project labels

Milestone
No milestone
None
None
Time tracking
No estimate or time spent
Lock merge request
Unlocked
2
2 participants
Administrator
Sergei Krupin
Reference: koush/AndroidAsync!492
Source branch: github/fork/eps1kk/master

Menu

Explore Projects Groups Snippets