summaryrefslogtreecommitdiffstats
path: root/chrome/browser/safe_json_parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/safe_json_parser.h')
-rw-r--r--chrome/browser/safe_json_parser.h62
1 files changed, 0 insertions, 62 deletions
diff --git a/chrome/browser/safe_json_parser.h b/chrome/browser/safe_json_parser.h
deleted file mode 100644
index 67ca547..0000000
--- a/chrome/browser/safe_json_parser.h
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_SAFE_JSON_PARSER_H_
-#define CHROME_BROWSER_SAFE_JSON_PARSER_H_
-
-#include <string>
-
-#include "base/basictypes.h"
-#include "base/callback.h"
-#include "base/memory/scoped_ptr.h"
-#include "content/public/browser/utility_process_host_client.h"
-
-namespace base {
-class ListValue;
-class Value;
-}
-
-namespace IPC {
-class Message;
-}
-
-// SafeJsonParser parses a given JSON safely via a utility process. The object
-// is ref-counted and kept alive after Start() is called until one of the two
-// callbacks is called.
-class SafeJsonParser : public content::UtilityProcessHostClient {
- public:
- typedef base::Callback<void(scoped_ptr<base::Value>)> SuccessCallback;
- typedef base::Callback<void(const std::string&)> ErrorCallback;
-
- SafeJsonParser(const std::string& unsafe_json,
- const SuccessCallback& success_callback,
- const ErrorCallback& error_callback);
-
- void Start();
-
- private:
- ~SafeJsonParser() override;
-
- void StartWorkOnIOThread();
-
- void OnJSONParseSucceeded(const base::ListValue& wrapper);
- void OnJSONParseFailed(const std::string& error_message);
-
- void ReportResults();
- void ReportResultOnUIThread();
-
- // Implementing pieces of the UtilityProcessHostClient interface.
- bool OnMessageReceived(const IPC::Message& message) override;
-
- const std::string unsafe_json_;
- SuccessCallback success_callback_;
- ErrorCallback error_callback_;
-
- scoped_ptr<base::Value> parsed_json_;
- std::string error_;
-
- DISALLOW_COPY_AND_ASSIGN(SafeJsonParser);
-};
-
-#endif // CHROME_BROWSER_SAFE_JSON_PARSER_H_