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

Unified Diff: chrome/browser/extensions/api/record/record_api.h

Issue 21854002: Remove experimental.record api completely (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased the patch Created 7 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/extensions/api/record/record_api.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/extensions/api/record/record_api.h
diff --git a/chrome/browser/extensions/api/record/record_api.h b/chrome/browser/extensions/api/record/record_api.h
deleted file mode 100644
index d0ea960e99073fbfecd4b3419f595ebc0099de5a..0000000000000000000000000000000000000000
--- a/chrome/browser/extensions/api/record/record_api.h
+++ /dev/null
@@ -1,168 +0,0 @@
-// Copyright (c) 2012 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_EXTENSIONS_API_RECORD_RECORD_API_H_
-#define CHROME_BROWSER_EXTENSIONS_API_RECORD_RECORD_API_H_
-
-#include "base/command_line.h"
-#include "base/files/file_path.h"
-#include "base/time/time.h"
-#include "chrome/browser/extensions/extension_function.h"
-
-namespace {
-
-const base::FilePath::CharType kURLErrorsSuffix[] =
- FILE_PATH_LITERAL(".errors");
-const char kErrorsKey[] = "errors";
-const char kStatsKey[] = "stats";
-
-};
-
-namespace extensions {
-
-// ProcessStrategy abstracts the API's starting and waiting on a test
-// browser instance. This lets us browser-test the API without actually
-// firing up a sub browser instance.
-class ProcessStrategy {
- public:
- // Needed to void build warnings
- virtual ~ProcessStrategy();
-
- // Used only in test version to pump the blocking pool queue,
- // which doesn't otherwise happen during test.
- virtual void PumpBlockingPool() {}
-
- // Start up process with given commandline. Real version does just
- // that; test version mocks it up, generating errors or good results,
- // as configured. If there are any problems running the process itself,
- // as opposed to errors in the cycler URL list, etc, report these via
- // |errors|
- virtual void RunProcess(const CommandLine& line,
- std::vector<std::string> *errors) = 0;
-};
-
-// Production (default) version of ProcessStrategy. See ProcessStrategy
-// comments for more info. This subclass actually starts a sub browser
-// instance.
-class ProductionProcessStrategy : public ProcessStrategy {
- public:
- virtual void RunProcess(const CommandLine& line,
- std::vector<std::string> *errors) OVERRIDE;
-};
-
-// Both page cycler calls (capture and replay) have a great deal in common,
-// including the need to build and write a url list file, set the user
-// data dir, start a sub-instance of Chrome, and parse a resultant error
-// file. This base class encapslates those common elements.
-class RunPageCyclerFunction : public AsyncExtensionFunction {
- public:
- explicit RunPageCyclerFunction(ProcessStrategy* strategy);
-
- // Make a CommandLine copy of |original|, removing all switches in
- // |to_remove|.
- static CommandLine RemoveSwitches(const CommandLine& original,
- const std::vector<std::string>& to_remove);
-
- // Return ProcessStrategy, to allow for test versions.
- virtual const ProcessStrategy &GetProcessStrategy();
-
- protected:
- virtual ~RunPageCyclerFunction();
-
- // Gather common page cycler parameters and store them, then do blocking
- // thread invocation of RunTestBrowser.
- virtual bool RunImpl() OVERRIDE;
-
- // Parse the JS parameters, and store them as member data.
- virtual bool ParseJSParameters() = 0;
-
- // Do a vanilla test browser run, bracketing it immediately before and
- // after with a call of AddSwitches to add special commandline options
- // for Capture or Replay, and ReadReplyFiles to do any special post-run
- // data collection. Gather any error results into |errors_| and then do a
- // BrowserThread call of Finish to return JS values.
- virtual void RunTestBrowser();
- virtual void AddSwitches(CommandLine* command_line) {}
-
- // The test browser communicates URL errors, performance statistics, and
- // possibly other data by posting them to text files. ReadReplyFiles
- // collects these data for return to the JS side caller.
- virtual void ReadReplyFiles() {}
-
- // Return the values gathered in RunTestBrowser. No common code here; all
- // logic is in subclasses.
- virtual void Finish() {}
-
- base::FilePath user_data_dir_;
- std::string url_contents_;
- int repeat_count_;
- std::vector<std::string> errors_;
-
- // Base CommandLine on which to build the test browser CommandLine
- CommandLine base_command_line_;
-
- // ProcessStrategy to use for this run.
- scoped_ptr<ProcessStrategy> process_strategy_;
-};
-
-class RecordCaptureURLsFunction : public RunPageCyclerFunction {
- public:
- DECLARE_EXTENSION_FUNCTION("experimental.record.captureURLs",
- EXPERIMENTAL_RECORD_CAPTUREURLS)
-
- RecordCaptureURLsFunction();
- explicit RecordCaptureURLsFunction(ProcessStrategy* strategy);
-
- private:
- virtual ~RecordCaptureURLsFunction() {}
-
- // Read the ReplayDetails parameter if it exists.
- virtual bool ParseJSParameters() OVERRIDE;
-
- // Add record-mode.
- virtual void AddSwitches(CommandLine* command_line) OVERRIDE;
-
- // Return error list.
- virtual void Finish() OVERRIDE;
-};
-
-class RecordReplayURLsFunction : public RunPageCyclerFunction {
- public:
- DECLARE_EXTENSION_FUNCTION("experimental.record.replayURLs",
- EXPERIMENTAL_RECORD_REPLAYURLS)
-
- RecordReplayURLsFunction();
- explicit RecordReplayURLsFunction(ProcessStrategy* strategy);
-
- private:
- virtual ~RecordReplayURLsFunction();
-
- // Read the ReplayDetails parameter if it exists.
- virtual bool ParseJSParameters() OVERRIDE;
-
- // Add visit-urls-count and load-extension.
- virtual void AddSwitches(CommandLine* command_line) OVERRIDE;
-
- // Read stats file.
- virtual void ReadReplyFiles() OVERRIDE;
-
- // Return error list, statistical results, and runtime.
- virtual void Finish() OVERRIDE;
-
- // These data are additional information added to the sub-browser
- // commandline or used to repeatedly run the sub-browser.
- base::FilePath extension_path_;
- base::FilePath stats_file_path_;
-
- // This time datum marks the start and end of the sub-browser run.
- base::Time timer_;
-
- // These two data are additional information returned to caller.
- double run_time_ms_;
- std::string stats_;
-};
-
-} // namespace extensions
-
-#endif // CHROME_BROWSER_EXTENSIONS_API_RECORD_RECORD_API_H_
« no previous file with comments | « no previous file | chrome/browser/extensions/api/record/record_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698