| Index: chrome/browser/extensions/api/api_function.cc
|
| diff --git a/chrome/browser/extensions/api/api_function.cc b/chrome/browser/extensions/api/api_function.cc
|
| index bfc27911865d0b8518f96bd1e0ccc8df72e093dd..c61c82ac641a4613bdcfa67b1ffb8562525683a2 100644
|
| --- a/chrome/browser/extensions/api/api_function.cc
|
| +++ b/chrome/browser/extensions/api/api_function.cc
|
| @@ -15,34 +15,6 @@ using content::BrowserThread;
|
|
|
| namespace extensions {
|
|
|
| -bool AsyncIOAPIFunction::RunImpl() {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - extension_service_ = profile()->GetExtensionService();
|
| -
|
| - if (!Prepare()) {
|
| - return false;
|
| - }
|
| - bool rv = BrowserThread::PostTask(
|
| - BrowserThread::IO, FROM_HERE,
|
| - base::Bind(&AsyncIOAPIFunction::WorkOnIOThread, this));
|
| - DCHECK(rv);
|
| - return true;
|
| -}
|
| -
|
| -void AsyncIOAPIFunction::WorkOnIOThread() {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| - Work();
|
| - bool rv = BrowserThread::PostTask(
|
| - BrowserThread::UI, FROM_HERE,
|
| - base::Bind(&AsyncIOAPIFunction::RespondOnUIThread, this));
|
| - DCHECK(rv);
|
| -}
|
| -
|
| -void AsyncIOAPIFunction::RespondOnUIThread() {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - SendResponse(Respond());
|
| -}
|
| -
|
| int AsyncIOAPIFunction::ExtractSrcId(size_t argument_position) {
|
| scoped_ptr<DictionaryValue> options(new DictionaryValue());
|
| if (args_->GetSize() > argument_position) {
|
| @@ -75,4 +47,32 @@ APIResourceController* AsyncIOAPIFunction::controller() {
|
| return extension_service_->api_resource_controller();
|
| }
|
|
|
| +bool AsyncIOAPIFunction::RunImpl() {
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| + extension_service_ = profile()->GetExtensionService();
|
| +
|
| + if (!Prepare()) {
|
| + return false;
|
| + }
|
| + bool rv = BrowserThread::PostTask(
|
| + BrowserThread::IO, FROM_HERE,
|
| + base::Bind(&AsyncIOAPIFunction::WorkOnIOThread, this));
|
| + DCHECK(rv);
|
| + return true;
|
| +}
|
| +
|
| +void AsyncIOAPIFunction::WorkOnIOThread() {
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
|
| + Work();
|
| + bool rv = BrowserThread::PostTask(
|
| + BrowserThread::UI, FROM_HERE,
|
| + base::Bind(&AsyncIOAPIFunction::RespondOnUIThread, this));
|
| + DCHECK(rv);
|
| +}
|
| +
|
| +void AsyncIOAPIFunction::RespondOnUIThread() {
|
| + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| + SendResponse(Respond());
|
| +}
|
| +
|
| } // namespace extensions
|
|
|