OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/quic/core/quic_session.h" | 5 #include "net/quic/core/quic_session.h" |
6 | 6 |
7 #include <cstdint> | 7 #include <cstdint> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "net/quic/core/quic_connection.h" | 10 #include "net/quic/core/quic_connection.h" |
(...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
812 bool QuicSession::HasDataToWrite() const { | 812 bool QuicSession::HasDataToWrite() const { |
813 return write_blocked_streams_.HasWriteBlockedCryptoOrHeadersStream() || | 813 return write_blocked_streams_.HasWriteBlockedCryptoOrHeadersStream() || |
814 write_blocked_streams_.HasWriteBlockedDataStreams() || | 814 write_blocked_streams_.HasWriteBlockedDataStreams() || |
815 connection_->HasQueuedData(); | 815 connection_->HasQueuedData(); |
816 } | 816 } |
817 | 817 |
818 void QuicSession::PostProcessAfterData() { | 818 void QuicSession::PostProcessAfterData() { |
819 closed_streams_.clear(); | 819 closed_streams_.clear(); |
820 } | 820 } |
821 | 821 |
| 822 void QuicSession::OnAckNeedsRetransmittableFrame() { |
| 823 flow_controller_.SendWindowUpdate(); |
| 824 } |
| 825 |
822 size_t QuicSession::GetNumDynamicOutgoingStreams() const { | 826 size_t QuicSession::GetNumDynamicOutgoingStreams() const { |
823 DCHECK_GE(dynamic_stream_map_.size(), num_dynamic_incoming_streams_); | 827 DCHECK_GE(dynamic_stream_map_.size(), num_dynamic_incoming_streams_); |
824 return dynamic_stream_map_.size() - num_dynamic_incoming_streams_; | 828 return dynamic_stream_map_.size() - num_dynamic_incoming_streams_; |
825 } | 829 } |
826 | 830 |
827 size_t QuicSession::GetNumDrainingOutgoingStreams() const { | 831 size_t QuicSession::GetNumDrainingOutgoingStreams() const { |
828 DCHECK_GE(draining_streams_.size(), num_draining_incoming_streams_); | 832 DCHECK_GE(draining_streams_.size(), num_draining_incoming_streams_); |
829 return draining_streams_.size() - num_draining_incoming_streams_; | 833 return draining_streams_.size() - num_draining_incoming_streams_; |
830 } | 834 } |
831 | 835 |
(...skipping 24 matching lines...) Expand all Loading... |
856 | 860 |
857 size_t QuicSession::MaxAvailableStreams() const { | 861 size_t QuicSession::MaxAvailableStreams() const { |
858 return max_open_incoming_streams_ * kMaxAvailableStreamsMultiplier; | 862 return max_open_incoming_streams_ * kMaxAvailableStreamsMultiplier; |
859 } | 863 } |
860 | 864 |
861 bool QuicSession::IsIncomingStream(QuicStreamId id) const { | 865 bool QuicSession::IsIncomingStream(QuicStreamId id) const { |
862 return id % 2 != next_outgoing_stream_id_ % 2; | 866 return id % 2 != next_outgoing_stream_id_ % 2; |
863 } | 867 } |
864 | 868 |
865 } // namespace net | 869 } // namespace net |
OLD | NEW |