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
3 // found in the LICENSE file.
5 #ifndef NET_SPDY_SPDY_HEADER_BLOCK_H_
6 #define NET_SPDY_SPDY_HEADER_BLOCK_H_
11 #include "net/base/net_export.h"
12 #include "net/log/net_log.h"
16 // A data structure for holding a set of headers from either a
17 // SYN_STREAM or SYN_REPLY frame.
18 typedef std::map
<std::string
, std::string
> SpdyHeaderBlock
;
20 // Converts a SpdyHeaderBlock into NetLog event parameters. Caller takes
21 // ownership of returned value.
22 NET_EXPORT
base::Value
* SpdyHeaderBlockNetLogCallback(
23 const SpdyHeaderBlock
* headers
,
24 NetLog::LogLevel log_level
);
26 // Converts NetLog event parameters into a SPDY header block and writes them
27 // to |headers|. |event_param| must have been created by
28 // SpdyHeaderBlockNetLogCallback. On failure, returns false and clears
30 NET_EXPORT
bool SpdyHeaderBlockFromNetLogParam(
31 const base::Value
* event_param
,
32 SpdyHeaderBlock
* headers
);
36 #endif // NET_SPDY_SPDY_HEADER_BLOCK_H_