Remove SpdySession::UnclaimedStreamContainer, manage all unclaimed pushed streams in Http2PushPromiseIndex. |
||
Issue descriptionDraft CL https://crrev.com/c/734223 is blocked on this, because the way SpdySession::UnclaimedStreamContainer and Http2PushPromiseIndex are currently entangled would make some very messy calls back and forth between the two classes that would make class invariants difficult to argue about.
,
Dec 6 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a12c770e918a69cc0bbba2d2579c22ff6ae76936 commit a12c770e918a69cc0bbba2d2579c22ff6ae76936 Author: Bence Béky <bnc@chromium.org> Date: Wed Dec 06 21:07:28 2017 Record stream IDs in Http2PushPromiseIndex. Stop using SpdySession instances in Http2PushPromiseIndexTests. This makes tests much simpler. Rename SpdySessionKey::Equals() to SpdySessionKey::operator==() so that it can be tested by gMock. This conforms to the style guide "prefer to define == [...] rather than Equals()", see https://google.github.io/styleguide/cppguide.html#Operator_Overloading Define struct UnclaimedPushedStream instead of using std::pair or std::tuple. Named members are much nicer than first, second, or get<>. Define CompareByUrl in conformance with the same section of the style guide "if your type doesn't have a natural ordering [...] use a custom comparator rather than overloading <". The next CL will merge SpdySession::UnclaimedPushedStreamContainer into Http2PushPromiseIndex. For this, two sets of UnclaimedPushedStream entries will need to be maintained with identical contents but different ordering. The other will be done by CompareByDelegate and will allow efficient lookup of entries for a given Delegate. Bug: 776415 , 791054 Change-Id: I0c1912e9932b102e17528f9319163232860a8813 Reviewed-on: https://chromium-review.googlesource.com/809187 Reviewed-by: Helen Li <xunjieli@chromium.org> Commit-Queue: Bence Béky <bnc@chromium.org> Cr-Commit-Position: refs/heads/master@{#522192} [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/http/http_stream_factory_impl_job.cc [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/http2_push_promise_index.cc [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/http2_push_promise_index.h [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/http2_push_promise_index_test.cc [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/spdy_session.cc [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/spdy_session.h [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/spdy_session_key.cc [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/spdy_session_key.h [modify] https://crrev.com/a12c770e918a69cc0bbba2d2579c22ff6ae76936/net/spdy/chromium/spdy_session_pool.cc
,
Dec 15 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fd2c1fd79bb9dc4eaee85af917525cb72520726a commit fd2c1fd79bb9dc4eaee85af917525cb72520726a Author: Bence Béky <bnc@chromium.org> Date: Fri Dec 15 02:32:03 2017 Remove SpdySession::UnclaimedPushedStreamContainer. Add methods to Http2PushPromiseIndex so that it could take over the functionality of SpdySession::UnclaimedPushedStreamContainer. Bug: 791054 Change-Id: Ia0dfc13faea2b3d261d3bd1827b796222130ffbf Reviewed-on: https://chromium-review.googlesource.com/820195 Reviewed-by: Helen Li <xunjieli@chromium.org> Reviewed-by: Bence Béky <bnc@chromium.org> Commit-Queue: Bence Béky <bnc@chromium.org> Cr-Commit-Position: refs/heads/master@{#524298} [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/http2_push_promise_index.cc [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/http2_push_promise_index.h [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/http2_push_promise_index_test.cc [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/spdy_network_transaction_unittest.cc [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/spdy_session.cc [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/spdy_session.h [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/spdy_session_pool.cc [modify] https://crrev.com/fd2c1fd79bb9dc4eaee85af917525cb72520726a/net/spdy/chromium/spdy_session_unittest.cc
,
Dec 15 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Dec 4 2017