From 9ce08d08de7c2edb7b3ba798fc45d214a9285ca3 Mon Sep 17 00:00:00 2001 From: Dun Liang Date: Wed, 26 Apr 2017 17:16:25 +0800 Subject: [PATCH 1/4] support --disk-cache-size flag #290 --- brightray/browser/url_request_context_getter.cc | 9 ++++++++- brightray/common/switches.cc | 3 +++ brightray/common/switches.h | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/brightray/browser/url_request_context_getter.cc b/brightray/browser/url_request_context_getter.cc index 2e483d62ae5f..70c4624b3f04 100644 --- a/brightray/browser/url_request_context_getter.cc +++ b/brightray/browser/url_request_context_getter.cc @@ -15,6 +15,7 @@ #include "base/command_line.h" #include "base/memory/ptr_util.h" #include "base/strings/string_util.h" +#include "base/strings/string_number_conversions.h" #include "base/threading/sequenced_worker_pool.h" #include "base/threading/worker_pool.h" #include "content/public/browser/browser_thread.h" @@ -92,12 +93,18 @@ URLRequestContextGetter::Delegate::CreateURLRequestJobFactory( net::HttpCache::BackendFactory* URLRequestContextGetter::Delegate::CreateHttpCacheBackendFactory( const base::FilePath& base_path) { + auto& command_line = *base::CommandLine::ForCurrentProcess(); + int max_size = 0; + if (command_line.HasSwitch(switches::kDiskCacheSize)) { + base::StringToInt(command_line.GetSwitchValueASCII(switches::kDiskCacheSize), + &max_size); + } base::FilePath cache_path = base_path.Append(FILE_PATH_LITERAL("Cache")); return new net::HttpCache::DefaultBackend( net::DISK_CACHE, net::CACHE_BACKEND_DEFAULT, cache_path, - 0, + max_size, BrowserThread::GetTaskRunnerForThread(BrowserThread::CACHE)); } diff --git a/brightray/common/switches.cc b/brightray/common/switches.cc index 1f0da2adfddf..17ca05857739 100644 --- a/brightray/common/switches.cc +++ b/brightray/common/switches.cc @@ -53,6 +53,9 @@ const char kAuthNegotiateDelegateWhitelist[] = // Ignores certificate-related errors. const char kIgnoreCertificateErrors[] = "ignore-certificate-errors"; +// Forces the maximum disk space to be used by the disk cache, in bytes. +const char kDiskCacheSize[] = "disk-cache-size"; + } // namespace switches } // namespace brightray diff --git a/brightray/common/switches.h b/brightray/common/switches.h index 3aad50656b74..286c4d633b91 100644 --- a/brightray/common/switches.h +++ b/brightray/common/switches.h @@ -18,6 +18,7 @@ extern const char kDisableHttp2[]; extern const char kAuthServerWhitelist[]; extern const char kAuthNegotiateDelegateWhitelist[]; extern const char kIgnoreCertificateErrors[]; +extern const char kDiskCacheSize[]; } // namespace switches From 5b02974aa89a767a3bc71ecab60bfa7b6b632ef1 Mon Sep 17 00:00:00 2001 From: Dun Liang Date: Mon, 8 May 2017 15:21:39 +0800 Subject: [PATCH 2/4] fix line is > 80 characters long --- brightray/browser/url_request_context_getter.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/brightray/browser/url_request_context_getter.cc b/brightray/browser/url_request_context_getter.cc index 70c4624b3f04..b574b38d883e 100644 --- a/brightray/browser/url_request_context_getter.cc +++ b/brightray/browser/url_request_context_getter.cc @@ -96,8 +96,9 @@ URLRequestContextGetter::Delegate::CreateHttpCacheBackendFactory( auto& command_line = *base::CommandLine::ForCurrentProcess(); int max_size = 0; if (command_line.HasSwitch(switches::kDiskCacheSize)) { - base::StringToInt(command_line.GetSwitchValueASCII(switches::kDiskCacheSize), - &max_size); + base::StringToInt( + command_line.GetSwitchValueASCII(switches::kDiskCacheSize), + &max_size); } base::FilePath cache_path = base_path.Append(FILE_PATH_LITERAL("Cache")); return new net::HttpCache::DefaultBackend( From ed076a8693cf9f62ea389ca806a7b2652f320a5c Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Mon, 15 May 2017 10:35:11 -0700 Subject: [PATCH 3/4] Remove unneeded HasSwitch check --- brightray/browser/url_request_context_getter.cc | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/brightray/browser/url_request_context_getter.cc b/brightray/browser/url_request_context_getter.cc index b574b38d883e..209260ace1c3 100644 --- a/brightray/browser/url_request_context_getter.cc +++ b/brightray/browser/url_request_context_getter.cc @@ -93,13 +93,11 @@ URLRequestContextGetter::Delegate::CreateURLRequestJobFactory( net::HttpCache::BackendFactory* URLRequestContextGetter::Delegate::CreateHttpCacheBackendFactory( const base::FilePath& base_path) { - auto& command_line = *base::CommandLine::ForCurrentProcess(); + auto command_line = base::CommandLine::ForCurrentProcess(); int max_size = 0; - if (command_line.HasSwitch(switches::kDiskCacheSize)) { - base::StringToInt( - command_line.GetSwitchValueASCII(switches::kDiskCacheSize), - &max_size); - } + base::StringToInt(command_line->GetSwitchValueASCII(switches::kDiskCacheSize), + &max_size); + base::FilePath cache_path = base_path.Append(FILE_PATH_LITERAL("Cache")); return new net::HttpCache::DefaultBackend( net::DISK_CACHE, From b4fc50e3b2e574cb93b42411c49eb1b878fb8276 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Mon, 15 May 2017 10:38:20 -0700 Subject: [PATCH 4/4] Doc --disk-cache-size --- docs/api/chrome-command-line-switches.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/api/chrome-command-line-switches.md b/docs/api/chrome-command-line-switches.md index 5bc1a99e9527..7308c5d45183 100644 --- a/docs/api/chrome-command-line-switches.md +++ b/docs/api/chrome-command-line-switches.md @@ -36,6 +36,10 @@ Debug-related flags, see the [Debugging the Main Process][debugging-main-process Enables remote debugging over HTTP on the specified `port`. +## --disk-cache-size=`size` + +Forces the maximum disk space to be used by the disk cache, in bytes. + ## --js-flags=`flags` Specifies the flags passed to the Node JS engine. It has to be passed when starting