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 7namespace net { 8 9QuicPriority 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 16NET_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 23base::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