gfe-relnote: Add NumRegisteredStreams interface to WriteScheduler and implements it in subclasses. No used in prod yet, not protected.
Also move WriteSchedulerType to third_party/spdy/spdy_protocol.h to allow it be used by QUIC.
PiperOrigin-RevId: 259786320
Change-Id: I71fd5b68be9c10bf47f576c3020af17f80212178
diff --git a/spdy/core/http2_priority_write_scheduler.h b/spdy/core/http2_priority_write_scheduler.h
index 1f72fdb..d08d125 100644
--- a/spdy/core/http2_priority_write_scheduler.h
+++ b/spdy/core/http2_priority_write_scheduler.h
@@ -76,11 +76,9 @@
PopNextReadyStreamAndPrecedence() override;
size_t NumReadyStreams() const override;
bool IsStreamReady(StreamIdType stream_id) const override;
+ size_t NumRegisteredStreams() const override;
SpdyString DebugString() const override;
- // Return the number of streams currently in the tree.
- int num_streams() const;
-
private:
friend class test::Http2PriorityWriteSchedulerPeer<StreamIdType>;
@@ -201,11 +199,6 @@
}
template <typename StreamIdType>
-int Http2PriorityWriteScheduler<StreamIdType>::num_streams() const {
- return all_stream_infos_.size();
-}
-
-template <typename StreamIdType>
bool Http2PriorityWriteScheduler<StreamIdType>::StreamRegistered(
StreamIdType stream_id) const {
return SpdyContainsKey(all_stream_infos_, stream_id);
@@ -696,8 +689,14 @@
}
template <typename StreamIdType>
+size_t Http2PriorityWriteScheduler<StreamIdType>::NumRegisteredStreams() const {
+ return all_stream_infos_.size();
+}
+
+template <typename StreamIdType>
SpdyString Http2PriorityWriteScheduler<StreamIdType>::DebugString() const {
- return SpdyStrCat("Http2PriorityWriteScheduler {num_streams=", num_streams(),
+ return SpdyStrCat("Http2PriorityWriteScheduler {num_registered_streams=",
+ NumRegisteredStreams(),
" num_ready_streams=", NumReadyStreams(), "}");
}
@@ -757,15 +756,15 @@
}
}
- // Make sure num_streams reflects the total number of streams the map
- // contains.
- if (total_streams != num_streams()) {
+ // Make sure NumRegisteredStreams() reflects the total number of streams the
+ // map contains.
+ if (total_streams != NumRegisteredStreams()) {
SPDY_DLOG(INFO) << "Map contains incorrect number of streams.";
return false;
}
// Validate the validation function; we should have visited each stream twice
// (except for the root)
- DCHECK(streams_visited == 2 * num_streams() - 1);
+ DCHECK(streams_visited == 2 * NumRegisteredStreams() - 1);
return true;
}