Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / components / network_hints / common / network_hints_messages.h
blob8613061078cd8a93f8c7c01dad3db0129864f485
1 // Copyright 2014 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 // Multiply-included file, no traditional include guard.
6 #include <string>
7 #include <vector>
9 #include "components/network_hints/common/network_hints_common.h"
10 #include "content/public/common/common_param_traits.h"
11 #include "ipc/ipc_message_macros.h"
12 #include "ipc/ipc_message_utils.h"
14 // Singly-included section for custom IPC traits.
15 #ifndef COMPONENTS_NETWORK_HINTS_COMMON_NETWORK_HINTS_MESSAGES_H_
16 #define COMPONENTS_NETWORK_HINTS_COMMON_NETWORK_HINTS_MESSAGES_H_
18 namespace IPC {
20 template <>
21 struct ParamTraits<network_hints::LookupRequest> {
22 typedef network_hints::LookupRequest param_type;
23 static void Write(Message* m, const param_type& p);
24 static bool Read(const Message* m, base::PickleIterator* iter, param_type* r);
25 static void Log(const param_type& p, std::string* l);
28 } // namespace IPC
30 #endif // COMPONENTS_NETWORK_HINTS_COMMON_NETWORK_HINTS_MESSAGES_H_
32 #define IPC_MESSAGE_START NetworkHintsMsgStart
34 //-----------------------------------------------------------------------------
35 // Host messages
36 // These are messages sent from the renderer process to the browser process.
38 // Request for a DNS prefetch of the names in the array.
39 // NameList is typedef'ed std::vector<std::string>
40 IPC_MESSAGE_CONTROL1(NetworkHintsMsg_DNSPrefetch,
41 network_hints::LookupRequest)
44 // Request for preconnect to host providing resource specified by URL
45 IPC_MESSAGE_CONTROL3(NetworkHintsMsg_Preconnect,
46 GURL /* preconnect target url */,
47 bool /* Does connection have its credentials flag set */,
48 int /* number of connections */)