| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "config.h" | 5 #include "config.h" |
| 6 #include "modules/fetch/DataConsumerHandleTestUtil.h" | 6 #include "modules/fetch/DataConsumerHandleTestUtil.h" |
| 7 | 7 |
| 8 #include "bindings/core/v8/DOMWrapperWorld.h" | 8 #include "bindings/core/v8/DOMWrapperWorld.h" |
| 9 | 9 |
| 10 namespace blink { | 10 namespace blink { |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 } else { | 197 } else { |
| 198 m_offset += size; | 198 m_offset += size; |
| 199 } | 199 } |
| 200 } | 200 } |
| 201 | 201 |
| 202 void DataConsumerHandleTestUtil::ReplayingHandle::Context::notify() | 202 void DataConsumerHandleTestUtil::ReplayingHandle::Context::notify() |
| 203 { | 203 { |
| 204 if (!m_client) | 204 if (!m_client) |
| 205 return; | 205 return; |
| 206 ASSERT(m_readerThread); | 206 ASSERT(m_readerThread); |
| 207 m_readerThread->postTask(FROM_HERE, new Task(threadSafeBind(&Context::notify
Internal, this))); | 207 m_readerThread->defaultTaskRunner()->postTask(FROM_HERE, new Task(threadSafe
Bind(&Context::notifyInternal, this))); |
| 208 } | 208 } |
| 209 | 209 |
| 210 void DataConsumerHandleTestUtil::ReplayingHandle::Context::notifyInternal() | 210 void DataConsumerHandleTestUtil::ReplayingHandle::Context::notifyInternal() |
| 211 { | 211 { |
| 212 { | 212 { |
| 213 MutexLocker locker(m_mutex); | 213 MutexLocker locker(m_mutex); |
| 214 if (!m_client || !m_readerThread->isCurrentThread()) { | 214 if (!m_client || !m_readerThread->isCurrentThread()) { |
| 215 // There is no client, or a new reader is attached. | 215 // There is no client, or a new reader is attached. |
| 216 return; | 216 return; |
| 217 } | 217 } |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 254 size_t size; | 254 size_t size; |
| 255 r = m_reader->read(buffer, sizeof(buffer), WebDataConsumerHandle::FlagNo
ne, &size); | 255 r = m_reader->read(buffer, sizeof(buffer), WebDataConsumerHandle::FlagNo
ne, &size); |
| 256 if (r == WebDataConsumerHandle::ShouldWait) | 256 if (r == WebDataConsumerHandle::ShouldWait) |
| 257 return; | 257 return; |
| 258 if (r != WebDataConsumerHandle::Ok) | 258 if (r != WebDataConsumerHandle::Ok) |
| 259 break; | 259 break; |
| 260 m_data.append(buffer, size); | 260 m_data.append(buffer, size); |
| 261 } | 261 } |
| 262 OwnPtr<HandleReadResult> result = adoptPtr(new HandleReadResult(r, m_data)); | 262 OwnPtr<HandleReadResult> result = adoptPtr(new HandleReadResult(r, m_data)); |
| 263 m_data.clear(); | 263 m_data.clear(); |
| 264 Platform::current()->currentThread()->postTask(FROM_HERE, new Task(bind(&Han
dleReader::runOnFinishedReading, this, result.release()))); | 264 Platform::current()->currentThread()->defaultTaskRunner()->postTask(FROM_HER
E, new Task(bind(&HandleReader::runOnFinishedReading, this, result.release()))); |
| 265 m_reader = nullptr; | 265 m_reader = nullptr; |
| 266 } | 266 } |
| 267 | 267 |
| 268 void DataConsumerHandleTestUtil::HandleReader::runOnFinishedReading(PassOwnPtr<H
andleReadResult> result) | 268 void DataConsumerHandleTestUtil::HandleReader::runOnFinishedReading(PassOwnPtr<H
andleReadResult> result) |
| 269 { | 269 { |
| 270 ASSERT(m_onFinishedReading); | 270 ASSERT(m_onFinishedReading); |
| 271 (*m_onFinishedReading.release())(result); | 271 (*m_onFinishedReading.release())(result); |
| 272 } | 272 } |
| 273 | 273 |
| 274 DataConsumerHandleTestUtil::HandleTwoPhaseReader::HandleTwoPhaseReader(PassOwnPt
r<WebDataConsumerHandle> handle, PassOwnPtr<OnFinishedReading> onFinishedReading
) | 274 DataConsumerHandleTestUtil::HandleTwoPhaseReader::HandleTwoPhaseReader(PassOwnPt
r<WebDataConsumerHandle> handle, PassOwnPtr<OnFinishedReading> onFinishedReading
) |
| (...skipping 13 matching lines...) Expand all Loading... |
| 288 return; | 288 return; |
| 289 if (r != WebDataConsumerHandle::Ok) | 289 if (r != WebDataConsumerHandle::Ok) |
| 290 break; | 290 break; |
| 291 // Read smaller than available in order to test |endRead|. | 291 // Read smaller than available in order to test |endRead|. |
| 292 size_t readSize = std::min(size, std::max(size * 2 / 3, static_cast<size
_t>(1))); | 292 size_t readSize = std::min(size, std::max(size * 2 / 3, static_cast<size
_t>(1))); |
| 293 m_data.append(static_cast<const char*>(buffer), readSize); | 293 m_data.append(static_cast<const char*>(buffer), readSize); |
| 294 m_reader->endRead(readSize); | 294 m_reader->endRead(readSize); |
| 295 } | 295 } |
| 296 OwnPtr<HandleReadResult> result = adoptPtr(new HandleReadResult(r, m_data)); | 296 OwnPtr<HandleReadResult> result = adoptPtr(new HandleReadResult(r, m_data)); |
| 297 m_data.clear(); | 297 m_data.clear(); |
| 298 Platform::current()->currentThread()->postTask(FROM_HERE, new Task(bind(&Han
dleTwoPhaseReader::runOnFinishedReading, this, result.release()))); | 298 Platform::current()->currentThread()->defaultTaskRunner()->postTask(FROM_HER
E, new Task(bind(&HandleTwoPhaseReader::runOnFinishedReading, this, result.relea
se()))); |
| 299 m_reader = nullptr; | 299 m_reader = nullptr; |
| 300 } | 300 } |
| 301 | 301 |
| 302 void DataConsumerHandleTestUtil::HandleTwoPhaseReader::runOnFinishedReading(Pass
OwnPtr<HandleReadResult> result) | 302 void DataConsumerHandleTestUtil::HandleTwoPhaseReader::runOnFinishedReading(Pass
OwnPtr<HandleReadResult> result) |
| 303 { | 303 { |
| 304 ASSERT(m_onFinishedReading); | 304 ASSERT(m_onFinishedReading); |
| 305 (*m_onFinishedReading.release())(result); | 305 (*m_onFinishedReading.release())(result); |
| 306 } | 306 } |
| 307 | 307 |
| 308 } // namespace blink | 308 } // namespace blink |
| OLD | NEW |