• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "net/quic/quic_http_utils.h"
6 
7 namespace net {
8 
ConvertRequestPriorityToQuicPriority(const RequestPriority priority)9 QuicPriority ConvertRequestPriorityToQuicPriority(
10     const RequestPriority priority) {
11   DCHECK_GE(priority, MINIMUM_PRIORITY);
12   DCHECK_LE(priority, MAXIMUM_PRIORITY);
13   return static_cast<QuicPriority>(HIGHEST - priority);
14 }
15 
ConvertQuicPriorityToRequestPriority(QuicPriority priority)16 NET_EXPORT_PRIVATE RequestPriority ConvertQuicPriorityToRequestPriority(
17     QuicPriority priority) {
18   // Handle invalid values gracefully.
19   return (priority >= 5) ?
20       IDLE : static_cast<RequestPriority>(HIGHEST - priority);
21 }
22 
QuicRequestNetLogCallback(QuicStreamId stream_id,const SpdyHeaderBlock * headers,QuicPriority priority,NetLog::LogLevel log_level)23 base::Value* QuicRequestNetLogCallback(
24     QuicStreamId stream_id,
25     const SpdyHeaderBlock* headers,
26     QuicPriority priority,
27     NetLog::LogLevel log_level) {
28   base::DictionaryValue* dict = static_cast<base::DictionaryValue*>(
29       SpdyHeaderBlockNetLogCallback(headers, log_level));
30   dict->SetInteger("quic_priority", static_cast<int>(priority));
31   dict->SetInteger("quic_stream_id", static_cast<int>(stream_id));
32   return dict;
33 }
34 
35 }  // namespace net
36