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

Side by Side Diff: components/safe_json_parser/safe_json_parser.cc

Issue 1100003006: Certificate Transparency: Fetching of Signed Tree Heads (DRAFT) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Revised design, addressed some comments Created 5 years, 6 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/safe_json_parser/safe_json_parser.h" 5 #include "components/safe_json_parser/safe_json_parser.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/thread_task_runner_handle.h" 10 #include "base/thread_task_runner_handle.h"
(...skipping 13 matching lines...) Expand all
24 24
25 SafeJsonParser::SafeJsonParser(const std::string& unsafe_json, 25 SafeJsonParser::SafeJsonParser(const std::string& unsafe_json,
26 const SuccessCallback& success_callback, 26 const SuccessCallback& success_callback,
27 const ErrorCallback& error_callback) 27 const ErrorCallback& error_callback)
28 : unsafe_json_(unsafe_json), 28 : unsafe_json_(unsafe_json),
29 success_callback_(success_callback), 29 success_callback_(success_callback),
30 error_callback_(error_callback) { 30 error_callback_(error_callback) {
31 } 31 }
32 32
33 void SafeJsonParser::Start() { 33 void SafeJsonParser::Start() {
34 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 34 if (!BrowserThread::CurrentlyOn(BrowserThread::IO)) {
35 BrowserThread::PostTask( 35 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
36 BrowserThread::IO, FROM_HERE, 36 BrowserThread::PostTask(
37 base::Bind(&SafeJsonParser::StartWorkOnIOThread, this)); 37 BrowserThread::IO, FROM_HERE,
38 base::Bind(&SafeJsonParser::StartWorkOnIOThread, this));
39 } else {
40 StartWorkOnIOThread();
41 }
Ryan Sleevi 2015/06/29 11:58:13 As discussed - follow up on the other CL
38 } 42 }
39 43
40 SafeJsonParser::~SafeJsonParser() { 44 SafeJsonParser::~SafeJsonParser() {
41 } 45 }
42 46
43 void SafeJsonParser::StartWorkOnIOThread() { 47 void SafeJsonParser::StartWorkOnIOThread() {
44 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); 48 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
45 UtilityProcessHost* host = UtilityProcessHost::Create( 49 UtilityProcessHost* host = UtilityProcessHost::Create(
46 this, base::ThreadTaskRunnerHandle::Get().get()); 50 this, base::ThreadTaskRunnerHandle::Get().get());
47 host->SetName( 51 host->SetName(
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 IPC_MESSAGE_HANDLER(SafeJsonParserHostMsg_ParseJSON_Succeeded, 93 IPC_MESSAGE_HANDLER(SafeJsonParserHostMsg_ParseJSON_Succeeded,
90 OnJSONParseSucceeded) 94 OnJSONParseSucceeded)
91 IPC_MESSAGE_HANDLER(SafeJsonParserHostMsg_ParseJSON_Failed, 95 IPC_MESSAGE_HANDLER(SafeJsonParserHostMsg_ParseJSON_Failed,
92 OnJSONParseFailed) 96 OnJSONParseFailed)
93 IPC_MESSAGE_UNHANDLED(handled = false) 97 IPC_MESSAGE_UNHANDLED(handled = false)
94 IPC_END_MESSAGE_MAP() 98 IPC_END_MESSAGE_MAP()
95 return handled; 99 return handled;
96 } 100 }
97 101
98 } // namespace safe_json_parser 102 } // namespace safe_json_parser
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698