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

Unified Diff: net/http/http_stream_factory_impl_job_controller.h

Issue 2332193003: JobController3: Move MarkAlternativeServiceBroken to job controller (Closed)
Patch Set: move logic to job controller Created 4 years, 3 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
Index: net/http/http_stream_factory_impl_job_controller.h
diff --git a/net/http/http_stream_factory_impl_job_controller.h b/net/http/http_stream_factory_impl_job_controller.h
index d54165028ab569ff72e50a2710da9e0e8703d539..35d9cc27a306243e024ea92c4aab3b9fafd2573e 100644
--- a/net/http/http_stream_factory_impl_job_controller.h
+++ b/net/http/http_stream_factory_impl_job_controller.h
@@ -201,6 +201,12 @@ class HttpStreamFactoryImpl::JobController
NextProto negotiated_protocol,
bool using_spdy);
+ // Must be called when |alternative_job_| fails.
+ void MaybeMarkAlternativeServiceBroken(Job* job);
+
+ // Must be called when Job succeeds.
+ void MaybeReportAlternativeServiceBroken(Job* job);
+
void MaybeNotifyFactoryOfCompletion();
// Called to resume the main job with delay.
@@ -255,6 +261,14 @@ class HttpStreamFactoryImpl::JobController
std::unique_ptr<Job> main_job_;
std::unique_ptr<Job> alternative_job_;
+ // True if |alternative_job_| uses alternative service/proxy server and
+ // discovers it as broken.
+ bool alternative_service_is_broken_;
+ // Either and only one of these records broken alternative service/proxy
+ // server that |alternative_job_| uses.
+ AlternativeService broken_alternative_service_;
+ ProxyServer broken_alternative_proxy_server_;
+
// True if a Job has ever been bound to the |request_|.
bool job_bound_;

Powered by Google App Engine
This is Rietveld 408576698