Index: chrome/browser/safe_search/safe_search_url_checker.cc |
diff --git a/chrome/browser/supervised_user/experimental/supervised_user_async_url_checker.cc b/chrome/browser/safe_search/safe_search_url_checker.cc |
similarity index 81% |
rename from chrome/browser/supervised_user/experimental/supervised_user_async_url_checker.cc |
rename to chrome/browser/safe_search/safe_search_url_checker.cc |
index d29df9b576b629667486ba4a5f9198a66e0a9939..ec37ff37b9b3744039834274ff25c227cc105792 100644 |
--- a/chrome/browser/supervised_user/experimental/supervised_user_async_url_checker.cc |
+++ b/chrome/browser/safe_search/safe_search_url_checker.cc |
@@ -2,7 +2,7 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include "chrome/browser/supervised_user/experimental/supervised_user_async_url_checker.h" |
+#include "chrome/browser/safe_search/safe_search_url_checker.h" |
#include <string> |
#include <utility> |
@@ -87,7 +87,7 @@ bool ParseResponse(const std::string& response, bool* is_porn) { |
} // namespace |
-struct SupervisedUserAsyncURLChecker::Check { |
+struct SafeSearchURLChecker::Check { |
Check(const GURL& url, |
std::unique_ptr<net::URLFetcher> fetcher, |
const CheckCallback& callback); |
@@ -99,7 +99,7 @@ struct SupervisedUserAsyncURLChecker::Check { |
base::TimeTicks start_time; |
}; |
-SupervisedUserAsyncURLChecker::Check::Check( |
+SafeSearchURLChecker::Check::Check( |
const GURL& url, |
std::unique_ptr<net::URLFetcher> fetcher, |
const CheckCallback& callback) |
@@ -108,20 +108,20 @@ SupervisedUserAsyncURLChecker::Check::Check( |
callbacks(1, callback), |
start_time(base::TimeTicks::Now()) {} |
-SupervisedUserAsyncURLChecker::Check::~Check() {} |
+SafeSearchURLChecker::Check::~Check() {} |
-SupervisedUserAsyncURLChecker::CheckResult::CheckResult( |
- SupervisedUserURLFilter::FilteringBehavior behavior, |
+SafeSearchURLChecker::CheckResult::CheckResult( |
+ Classification classification, |
Marc Treib
2016/10/06 13:16:42
nit: I think this fits on the previous line now. (
msramek
2016/10/06 15:08:41
Done. I intentionally didn't run format at first t
|
bool uncertain) |
- : behavior(behavior), |
+ : classification(classification), |
uncertain(uncertain), |
timestamp(base::TimeTicks::Now()) {} |
-SupervisedUserAsyncURLChecker::SupervisedUserAsyncURLChecker( |
+SafeSearchURLChecker::SafeSearchURLChecker( |
URLRequestContextGetter* context) |
- : SupervisedUserAsyncURLChecker(context, kDefaultCacheSize) {} |
+ : SafeSearchURLChecker(context, kDefaultCacheSize) {} |
-SupervisedUserAsyncURLChecker::SupervisedUserAsyncURLChecker( |
+SafeSearchURLChecker::SafeSearchURLChecker( |
URLRequestContextGetter* context, |
size_t cache_size) |
: context_(context), |
@@ -129,16 +129,16 @@ SupervisedUserAsyncURLChecker::SupervisedUserAsyncURLChecker( |
cache_timeout_( |
base::TimeDelta::FromSeconds(kDefaultCacheTimeoutSeconds)) {} |
-SupervisedUserAsyncURLChecker::~SupervisedUserAsyncURLChecker() {} |
+SafeSearchURLChecker::~SafeSearchURLChecker() {} |
-bool SupervisedUserAsyncURLChecker::CheckURL(const GURL& url, |
- const CheckCallback& callback) { |
+bool SafeSearchURLChecker::CheckURL(const GURL& url, |
+ const CheckCallback& callback) { |
// TODO(treib): Hack: For now, allow all Google URLs to save QPS. If we ever |
// remove this, we should find a way to allow at least the NTP. |
if (google_util::IsGoogleDomainUrl(url, |
google_util::ALLOW_SUBDOMAIN, |
google_util::ALLOW_NON_STANDARD_PORTS)) { |
- callback.Run(url, SupervisedUserURLFilter::ALLOW, false); |
+ callback.Run(url, SAFE, false); |
return true; |
} |
// TODO(treib): Hack: For now, allow all YouTube URLs since YouTube has its |
@@ -146,7 +146,7 @@ bool SupervisedUserAsyncURLChecker::CheckURL(const GURL& url, |
if (google_util::IsYoutubeDomainUrl(url, |
google_util::ALLOW_SUBDOMAIN, |
google_util::ALLOW_NON_STANDARD_PORTS)) { |
- callback.Run(url, SupervisedUserURLFilter::ALLOW, false); |
+ callback.Run(url, SAFE, false); |
return true; |
} |
@@ -156,10 +156,9 @@ bool SupervisedUserAsyncURLChecker::CheckURL(const GURL& url, |
base::TimeDelta age = base::TimeTicks::Now() - result.timestamp; |
if (age < cache_timeout_) { |
DVLOG(1) << "Cache hit! " << url.spec() << " is " |
- << (result.behavior == SupervisedUserURLFilter::BLOCK ? "NOT" |
- : "") |
+ << (result.classification == UNSAFE ? "NOT" : "") |
<< " safe; certain: " << !result.uncertain; |
- callback.Run(url, result.behavior, result.uncertain); |
+ callback.Run(url, result.classification, result.uncertain); |
return true; |
} |
DVLOG(1) << "Outdated cache entry for " << url.spec() << ", purging"; |
@@ -184,7 +183,7 @@ bool SupervisedUserAsyncURLChecker::CheckURL(const GURL& url, |
return false; |
} |
-void SupervisedUserAsyncURLChecker::OnURLFetchComplete( |
+void SafeSearchURLChecker::OnURLFetchComplete( |
const net::URLFetcher* source) { |
ScopedVector<Check>::iterator it = checks_in_progress_.begin(); |
while (it != checks_in_progress_.end()) { |
@@ -199,7 +198,7 @@ void SupervisedUserAsyncURLChecker::OnURLFetchComplete( |
if (!status.is_success()) { |
DLOG(WARNING) << "URL request failed! Letting through..."; |
for (size_t i = 0; i < check->callbacks.size(); i++) |
- check->callbacks[i].Run(check->url, SupervisedUserURLFilter::ALLOW, true); |
+ check->callbacks[i].Run(check->url, SAFE, true); |
checks_in_progress_.erase(it); |
return; |
} |
@@ -208,15 +207,15 @@ void SupervisedUserAsyncURLChecker::OnURLFetchComplete( |
source->GetResponseAsString(&response_body); |
bool is_porn = false; |
bool uncertain = !ParseResponse(response_body, &is_porn); |
- SupervisedUserURLFilter::FilteringBehavior behavior = |
- is_porn ? SupervisedUserURLFilter::BLOCK : SupervisedUserURLFilter::ALLOW; |
+ Classification classification = is_porn ? UNSAFE : SAFE; |
+ // TODO(msramek): Should we rename the histogram? |
Marc Treib
2016/10/06 13:16:42
Hm, probably. If not, then we should at least upda
msramek
2016/10/06 15:08:41
Actually, now that I think about it, the "average
Marc Treib
2016/10/06 15:17:15
It's not a total page load delay, it's specificall
msramek
2016/10/07 08:59:51
Acknowledged. I made a note in the linked bug.
|
UMA_HISTOGRAM_TIMES("ManagedUsers.SafeSitesDelay", |
base::TimeTicks::Now() - check->start_time); |
- cache_.Put(check->url, CheckResult(behavior, uncertain)); |
+ cache_.Put(check->url, CheckResult(classification, uncertain)); |
for (size_t i = 0; i < check->callbacks.size(); i++) |
- check->callbacks[i].Run(check->url, behavior, uncertain); |
+ check->callbacks[i].Run(check->url, classification, uncertain); |
checks_in_progress_.erase(it); |
} |