Roll src/third_party/WebKit 8121bc6:918aba1 (svn 188871:188878)
[chromium-blink-merge.git] / net / base / load_states.h
blobe0915bacbe35b7c5104e8fbf10e7d0970ad60137
1 // Copyright (c) 2011 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_BASE_LOAD_STATES_H__
6 #define NET_BASE_LOAD_STATES_H__
8 #include "base/strings/string16.h"
10 namespace net {
12 // These states correspond to the lengthy periods of time that a resource load
13 // may be blocked and unable to make progress.
14 enum LoadState {
16 #define LOAD_STATE(label) LOAD_STATE_ ## label,
17 #include "net/base/load_states_list.h"
18 #undef LOAD_STATE
22 // Some states, like LOAD_STATE_WAITING_FOR_DELEGATE, are associated with extra
23 // data that describes more precisely what the delegate (for example) is doing.
24 // This class provides an easy way to hold a load state with an extra parameter.
25 struct LoadStateWithParam {
26 LoadState state;
27 base::string16 param;
28 LoadStateWithParam() : state(LOAD_STATE_IDLE) {}
29 LoadStateWithParam(LoadState state, const base::string16& param)
30 : state(state), param(param) {}
33 } // namespace net
35 #endif // NET_BASE_LOAD_STATES_H__