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

Unified Diff: net/quic/chromium/quic_chromium_client_session.cc

Issue 2346383003: Deprecated: Server Push Cancellation: add a interface PushPromiseHelper
Patch Set: Implemente PushPromiseHelper::Cancel() Created 4 years, 2 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
« no previous file with comments | « net/net.gypi ('k') | net/spdy/push_promise_helper.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/chromium/quic_chromium_client_session.cc
diff --git a/net/quic/chromium/quic_chromium_client_session.cc b/net/quic/chromium/quic_chromium_client_session.cc
index 72fab95b2afcbfa5ccf40224efec042b2cd9cff1..ec2dd231ca00a6080566eb7e50fc9b4cb767bd4d 100644
--- a/net/quic/chromium/quic_chromium_client_session.cc
+++ b/net/quic/chromium/quic_chromium_client_session.cc
@@ -31,6 +31,7 @@
#include "net/quic/core/quic_client_promised_info.h"
#include "net/quic/core/quic_crypto_client_stream_factory.h"
#include "net/quic/core/spdy_utils.h"
+#include "net/spdy/push_promise_helper.h"
#include "net/spdy/spdy_session.h"
#include "net/ssl/channel_id_service.h"
#include "net/ssl/ssl_connection_status_flags.h"
@@ -162,6 +163,26 @@ class HpackDecoderDebugVisitor : public QuicHeadersStream::HpackDebugVisitor {
}
};
+class QuicPushPromiseHelper : public PushPromiseHelper {
+ public:
+ explicit QuicPushPromiseHelper(
+ base::WeakPtr<QuicChromiumClientSession> session,
+ const GURL& url)
+ : session_(session), request_url_(url) {}
+
+ void Cancel() override {
+ if (session_) {
+ session_->CancelPush(request_url_);
+ }
+ }
+
+ const GURL& GetURL() override { return request_url_; }
+
+ private:
+ base::WeakPtr<QuicChromiumClientSession> session_;
+ const GURL request_url_;
+};
+
} // namespace
QuicChromiumClientSession::StreamRequest::StreamRequest() : stream_(nullptr) {}
« no previous file with comments | « net/net.gypi ('k') | net/spdy/push_promise_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698