| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/cronet/android/cronet_url_request_adapter.h" | 5 #include "components/cronet/android/cronet_url_request_adapter.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 129 DCHECK(!context_->IsOnNetworkThread()); | 129 DCHECK(!context_->IsOnNetworkThread()); |
| 130 context_->PostTaskToNetworkThread( | 130 context_->PostTaskToNetworkThread( |
| 131 FROM_HERE, base::Bind(&CronetURLRequestAdapter::StartOnNetworkThread, | 131 FROM_HERE, base::Bind(&CronetURLRequestAdapter::StartOnNetworkThread, |
| 132 base::Unretained(this))); | 132 base::Unretained(this))); |
| 133 } | 133 } |
| 134 | 134 |
| 135 void CronetURLRequestAdapter::GetStatus( | 135 void CronetURLRequestAdapter::GetStatus( |
| 136 JNIEnv* env, | 136 JNIEnv* env, |
| 137 const JavaParamRef<jobject>& jcaller, | 137 const JavaParamRef<jobject>& jcaller, |
| 138 const JavaParamRef<jobject>& jstatus_listener) const { | 138 const JavaParamRef<jobject>& jstatus_listener) const { |
| 139 DCHECK(!context_->IsOnNetworkThread()); | |
| 140 base::android::ScopedJavaGlobalRef<jobject> status_listener_ref; | 139 base::android::ScopedJavaGlobalRef<jobject> status_listener_ref; |
| 141 status_listener_ref.Reset(env, jstatus_listener); | 140 status_listener_ref.Reset(env, jstatus_listener); |
| 142 context_->PostTaskToNetworkThread( | 141 context_->PostTaskToNetworkThread( |
| 143 FROM_HERE, base::Bind(&CronetURLRequestAdapter::GetStatusOnNetworkThread, | 142 FROM_HERE, base::Bind(&CronetURLRequestAdapter::GetStatusOnNetworkThread, |
| 144 base::Unretained(this), status_listener_ref)); | 143 base::Unretained(this), status_listener_ref)); |
| 145 } | 144 } |
| 146 | 145 |
| 147 void CronetURLRequestAdapter::FollowDeferredRedirect( | 146 void CronetURLRequestAdapter::FollowDeferredRedirect( |
| 148 JNIEnv* env, | 147 JNIEnv* env, |
| 149 const JavaParamRef<jobject>& jcaller) { | 148 const JavaParamRef<jobject>& jcaller) { |
| 150 DCHECK(!context_->IsOnNetworkThread()); | |
| 151 context_->PostTaskToNetworkThread( | 149 context_->PostTaskToNetworkThread( |
| 152 FROM_HERE, | 150 FROM_HERE, |
| 153 base::Bind( | 151 base::Bind( |
| 154 &CronetURLRequestAdapter::FollowDeferredRedirectOnNetworkThread, | 152 &CronetURLRequestAdapter::FollowDeferredRedirectOnNetworkThread, |
| 155 base::Unretained(this))); | 153 base::Unretained(this))); |
| 156 } | 154 } |
| 157 | 155 |
| 158 jboolean CronetURLRequestAdapter::ReadData( | 156 jboolean CronetURLRequestAdapter::ReadData( |
| 159 JNIEnv* env, | 157 JNIEnv* env, |
| 160 const JavaParamRef<jobject>& jcaller, | 158 const JavaParamRef<jobject>& jcaller, |
| 161 const JavaParamRef<jobject>& jbyte_buffer, | 159 const JavaParamRef<jobject>& jbyte_buffer, |
| 162 jint jposition, | 160 jint jposition, |
| 163 jint jlimit) { | 161 jint jlimit) { |
| 164 DCHECK(!context_->IsOnNetworkThread()); | |
| 165 DCHECK_LT(jposition, jlimit); | 162 DCHECK_LT(jposition, jlimit); |
| 166 | 163 |
| 167 void* data = env->GetDirectBufferAddress(jbyte_buffer); | 164 void* data = env->GetDirectBufferAddress(jbyte_buffer); |
| 168 if (!data) | 165 if (!data) |
| 169 return JNI_FALSE; | 166 return JNI_FALSE; |
| 170 | 167 |
| 171 scoped_refptr<IOBufferWithByteBuffer> read_buffer( | 168 scoped_refptr<IOBufferWithByteBuffer> read_buffer( |
| 172 new IOBufferWithByteBuffer(env, jbyte_buffer, data, jposition, jlimit)); | 169 new IOBufferWithByteBuffer(env, jbyte_buffer, data, jposition, jlimit)); |
| 173 | 170 |
| 174 int remaining_capacity = jlimit - jposition; | 171 int remaining_capacity = jlimit - jposition; |
| (...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 382 ConvertUTF8ToJavaString(env, net::ErrorToString(net_error)).obj(), | 379 ConvertUTF8ToJavaString(env, net::ErrorToString(net_error)).obj(), |
| 383 request->GetTotalReceivedBytes()); | 380 request->GetTotalReceivedBytes()); |
| 384 return true; | 381 return true; |
| 385 } | 382 } |
| 386 | 383 |
| 387 net::URLRequest* CronetURLRequestAdapter::GetURLRequestForTesting() { | 384 net::URLRequest* CronetURLRequestAdapter::GetURLRequestForTesting() { |
| 388 return url_request_.get(); | 385 return url_request_.get(); |
| 389 } | 386 } |
| 390 | 387 |
| 391 } // namespace cronet | 388 } // namespace cronet |
| OLD | NEW |