Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(355)

Side by Side Diff: chrome/browser/extensions/file_reader.cc

Issue 8343008: base::Bind conversion for chrome/browser/extensions/file_reader. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "chrome/browser/extensions/file_reader.h" 5 #include "chrome/browser/extensions/file_reader.h"
6 6
7 #include "base/bind.h"
7 #include "base/file_util.h" 8 #include "base/file_util.h"
8 #include "base/message_loop.h" 9 #include "base/message_loop.h"
9 #include "content/browser/browser_thread.h" 10 #include "content/browser/browser_thread.h"
10 #include "chrome/common/extensions/extension_resource.h" 11 #include "chrome/common/extensions/extension_resource.h"
11 12
12 FileReader::FileReader(const ExtensionResource& resource, Callback* callback) 13 FileReader::FileReader(const ExtensionResource& resource,
14 const Callback& callback)
13 : resource_(resource), 15 : resource_(resource),
14 callback_(callback), 16 callback_(callback),
15 origin_loop_(MessageLoop::current()) { 17 origin_loop_(MessageLoop::current()) {
16 DCHECK(callback_);
17 } 18 }
18 19
19 void FileReader::Start() { 20 void FileReader::Start() {
20 BrowserThread::PostTask( 21 BrowserThread::PostTask(
21 BrowserThread::FILE, FROM_HERE, 22 BrowserThread::FILE, FROM_HERE,
22 NewRunnableMethod(this, &FileReader::ReadFileOnBackgroundThread)); 23 base::Bind(&FileReader::ReadFileOnBackgroundThread, this));
23 } 24 }
24 25
25 FileReader::~FileReader() {} 26 FileReader::~FileReader() {}
26 27
27 void FileReader::ReadFileOnBackgroundThread() { 28 void FileReader::ReadFileOnBackgroundThread() {
28 std::string data; 29 std::string data;
29 bool success = file_util::ReadFileToString(resource_.GetFilePath(), &data); 30 bool success = file_util::ReadFileToString(resource_.GetFilePath(), &data);
30 origin_loop_->PostTask(FROM_HERE, NewRunnableMethod( 31 origin_loop_->PostTask(FROM_HERE, base::Bind(callback_, success, data));
31 this, &FileReader::RunCallback, success, data));
32 } 32 }
33
34 void FileReader::RunCallback(bool success, const std::string& data) {
35 callback_->Run(success, data);
36 delete callback_;
37 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/file_reader.h ('k') | chrome/browser/extensions/file_reader_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698