| // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #ifndef NET_TOOLS_QUIC_SPDY_UTILS_H_ | 
 | #define NET_TOOLS_QUIC_SPDY_UTILS_H_ | 
 |  | 
 | #include <string> | 
 |  | 
 | #include "net/spdy/spdy_framer.h" | 
 | #include "net/spdy/spdy_header_block.h" | 
 | #include "net/spdy/spdy_protocol.h" | 
 | #include "net/tools/balsa/balsa_headers.h" | 
 |  | 
 | namespace net { | 
 | namespace tools { | 
 |  | 
 | class SpdyUtils { | 
 |  public: | 
 |   static std::string SerializeRequestHeaders( | 
 |       const BalsaHeaders& request_headers); | 
 |  | 
 |   static std::string SerializeResponseHeaders( | 
 |       const BalsaHeaders& response_headers); | 
 |  | 
 |   static bool FillBalsaRequestHeaders(const SpdyHeaderBlock& header_block, | 
 |                                       BalsaHeaders* request_headers); | 
 |  | 
 |   static bool FillBalsaResponseHeaders(const SpdyHeaderBlock& header_block, | 
 |                                        BalsaHeaders* response_headers); | 
 |  | 
 |   static SpdyHeaderBlock RequestHeadersToSpdyHeaders( | 
 |       const BalsaHeaders& request_headers); | 
 |  | 
 |   static SpdyHeaderBlock RequestHeadersToSpdy4Headers( | 
 |       const BalsaHeaders& request_headers); | 
 |  | 
 |   static SpdyHeaderBlock ResponseHeadersToSpdyHeaders( | 
 |       const BalsaHeaders& response_headers); | 
 |  | 
 |   static std::string SerializeUncompressedHeaders( | 
 |       const SpdyHeaderBlock& headers); | 
 |  | 
 |  private: | 
 |   DISALLOW_COPY_AND_ASSIGN(SpdyUtils); | 
 | }; | 
 |  | 
 | }  // namespace tools | 
 | }  // namespace net | 
 |  | 
 | #endif  // NET_TOOLS_QUIC_SPDY_UTILS_H_ |