Index: headless/public/headless_browser.cc |
diff --git a/headless/public/headless_browser.cc b/headless/public/headless_browser.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..bc32e1abc922efe7519ddc7849f1cc5bb1e27dc0 |
--- /dev/null |
+++ b/headless/public/headless_browser.cc |
@@ -0,0 +1,48 @@ |
+#include "headless/public/headless_browser.h" |
+ |
+#include "net/url_request/url_request_context_getter.h" |
+ |
+using Options = headless::HeadlessBrowser::Options; |
+using Builder = headless::HeadlessBrowser::Options::Builder; |
+ |
+namespace headless { |
+ |
+Options::Options(int argc, const char** argv) |
+ : argc(argc), argv(argv) {} |
+ |
+Options::Options(Options&& options) |
+ : argc(std::move(options.argc)) |
+ , argv(std::move(options.argv)) |
+ , user_agent(std::move(options.user_agent)) |
+ , devtools_http_port(std::move(options.devtools_http_port)) |
+ , url_request_context_getter(std::move(options.url_request_context_getter)) {} |
+ |
+Options::~Options() {} |
+ |
+Builder::Builder(int argc, const char** argv) |
+ : options_(argc, argv) {} |
+ |
+Builder::~Builder() {} |
+ |
+Builder& Builder::SetUserAgent(const std::string& user_agent) { |
+ options_.user_agent = make_scoped_ptr(new std::string(user_agent)); |
+ return *this; |
+} |
+ |
+Builder& Builder::EnableDevtoolsServer(int port) { |
+ options_.devtools_http_port = make_scoped_ptr(new int(port)); |
+ return *this; |
+} |
+ |
+Builder& Builder::SetURLRequestContextGetter( |
+ scoped_refptr<net::URLRequestContextGetter> url_request_context_getter) |
+{ |
+ options_.url_request_context_getter = url_request_context_getter; |
+ return *this; |
+} |
+ |
+Options Builder::Build() { |
+ return std::move(options_); |
+} |
+ |
+} // namespace headless |