Index: extensions/browser/updater/safe_manifest_parser.h |
diff --git a/extensions/browser/updater/safe_manifest_parser.h b/extensions/browser/updater/safe_manifest_parser.h |
index 3f852fe68a579ce08a240a5aa5a5ef934c1259c5..4f4315884263af460549772092dedc340c924ffb 100644 |
--- a/extensions/browser/updater/safe_manifest_parser.h |
+++ b/extensions/browser/updater/safe_manifest_parser.h |
@@ -5,49 +5,18 @@ |
#ifndef EXTENSIONS_BROWSER_UPDATER_SAFE_MANIFEST_PARSER_H_ |
#define EXTENSIONS_BROWSER_UPDATER_SAFE_MANIFEST_PARSER_H_ |
-#include <memory> |
#include <string> |
-#include "base/callback.h" |
-#include "base/macros.h" |
-#include "content/public/browser/utility_process_host_client.h" |
-#include "extensions/browser/updater/manifest_fetch_data.h" |
+#include "base/callback_forward.h" |
#include "extensions/common/update_manifest.h" |
namespace extensions { |
-// Utility class to handle doing xml parsing in a sandboxed utility process. |
-class SafeManifestParser : public content::UtilityProcessHostClient { |
- public: |
- // Callback that is invoked when the manifest results are ready. |
- typedef base::Callback<void(const UpdateManifest::Results*)> ResultsCallback; |
- |
- SafeManifestParser(const std::string& xml, |
- const ResultsCallback& results_callback); |
- |
- // Posts a task over to the IO loop to start the parsing of xml_ in a |
- // utility process. |
- void Start(); |
- |
- private: |
- ~SafeManifestParser() override; |
- |
- // Creates the sandboxed utility process and tells it to start parsing. |
- void ParseInSandbox(); |
- |
- // content::UtilityProcessHostClient implementation. |
- bool OnMessageReceived(const IPC::Message& message) override; |
- |
- void OnParseUpdateManifestSucceeded(const UpdateManifest::Results& results); |
- void OnParseUpdateManifestFailed(const std::string& error_message); |
- |
- const std::string xml_; |
- |
- // Should be accessed only on UI thread. |
- ResultsCallback results_callback_; |
- |
- DISALLOW_COPY_AND_ASSIGN(SafeManifestParser); |
-}; |
+// Parses an update manifest |xml| safely in a utility process and calls |
+// |callback| with the results. Runs on the UI thread. |
tibell
2017/03/20 22:55:36
Perhaps add: The results will be null on failure.
Noel Gordon
2017/03/20 23:21:08
Done.
|
+void ParseUpdateManifest( |
+ const std::string& xml, |
+ const base::Callback<void(const UpdateManifest::Results*)>& callback); |
} // namespace extensions |