| Index: components/cronet/android/chromium_url_request.cc
|
| diff --git a/components/cronet/android/chromium_url_request.cc b/components/cronet/android/chromium_url_request.cc
|
| index 60b422f3781591f5cbff76849595904f458782c2..48db19721e75c04bd5e2181a096214ed2b5394d1 100644
|
| --- a/components/cronet/android/chromium_url_request.cc
|
| +++ b/components/cronet/android/chromium_url_request.cc
|
| @@ -195,14 +195,40 @@ static void SetUploadChannel(JNIEnv* env,
|
| URLRequestAdapter* request =
|
| reinterpret_cast<URLRequestAdapter*>(urlRequestAdapter);
|
| SetPostContentType(env, request, content_type);
|
|
|
| request->SetUploadChannel(env, content_length);
|
| }
|
|
|
| +static void EnableChunkedUpload(JNIEnv* env,
|
| + jobject object,
|
| + jlong urlRequestAdapter,
|
| + jstring content_type) {
|
| + URLRequestAdapter* request =
|
| + reinterpret_cast<URLRequestAdapter*>(urlRequestAdapter);
|
| + SetPostContentType(env, request, content_type);
|
| +
|
| + request->EnableChunkedUpload();
|
| +}
|
| +
|
| +static void AppendChunk(JNIEnv* env,
|
| + jobject object,
|
| + jlong urlRequestAdapter,
|
| + jobject chunk_byte_buffer,
|
| + jint chunk_size,
|
| + jboolean is_last_chunk) {
|
| + URLRequestAdapter* request =
|
| + reinterpret_cast<URLRequestAdapter*>(urlRequestAdapter);
|
| + DCHECK(chunk_byte_buffer != NULL);
|
| +
|
| + void* chunk = env->GetDirectBufferAddress(chunk_byte_buffer);
|
| + request->AppendChunk(
|
| + reinterpret_cast<const char*>(chunk), chunk_size, is_last_chunk);
|
| +}
|
| +
|
| /* synchronized */
|
| static void Start(JNIEnv* env, jobject object, jlong urlRequestAdapter) {
|
| URLRequestAdapter* request =
|
| reinterpret_cast<URLRequestAdapter*>(urlRequestAdapter);
|
| if (request != NULL) {
|
| request->Start();
|
| }
|
|
|