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

Unified Diff: net/http/http_stream_factory_impl_job_controller.h

Issue 2332193003: JobController3: Move MarkAlternativeServiceBroken to job controller (Closed)
Patch Set: some nits 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..ed8a7dc52d5ecd125a60249e36552a5f7a55c823 100644
--- a/net/http/http_stream_factory_impl_job_controller.h
+++ b/net/http/http_stream_factory_impl_job_controller.h
@@ -66,6 +66,13 @@ class HttpStreamFactoryImpl::JobController
void SetPriority(RequestPriority priority) override;
// From HttpStreamFactoryImpl::Job::Delegate.
+
+ // Invoked when |job| has alternative service identified borken.
+ void OnAlternativeServiceBroken(Job* job) override;
+
+ // Invoked when |job| has alternative proxy server identified broken.
+ void OnAlternativeProxyServerBroken(Job* job) override;
+
// Invoked when |job| has an HttpStream ready.
void OnStreamReady(Job* job,
const SSLConfig& used_ssl_config,
@@ -201,6 +208,9 @@ class HttpStreamFactoryImpl::JobController
NextProto negotiated_protocol,
bool using_spdy);
+ // Only be called in successful cases when a job manages to serve the request.
+ void MaybeMarkAlternativeServiceBroken();
+
void MaybeNotifyFactoryOfCompletion();
// Called to resume the main job with delay.
@@ -255,6 +265,15 @@ class HttpStreamFactoryImpl::JobController
std::unique_ptr<Job> main_job_;
std::unique_ptr<Job> alternative_job_;
+ // True if |alternative_job_| uses alternative service and discovers it as
+ // broken.
+ bool alternative_service_is_broken_;
tbansal1 2016/09/13 05:06:45 Is it possible to remove the bool variable since
+ AlternativeService broken_alternative_service_;
+ // True if |alternative_job_| uses alternative proxy server and discovers it
+ // as broken or failed.
+ bool alternative_proxy_server_is_broken_;
+ 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