Add GCMChannelStatusSyncer to schedule requests and enable/disable GCM
[chromium-blink-merge.git] / chrome / browser / local_discovery / device_description.h
blob2710b7bc1b9a31e633b99a3a1d03a6abb631bf40
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 #ifndef CHROME_BROWSER_LOCAL_DISCOVERY_DEVICE_DESCRIPTION_H_
6 #define CHROME_BROWSER_LOCAL_DISCOVERY_DEVICE_DESCRIPTION_H_
8 #include <string>
10 #include "base/time/time.h"
11 #include "net/base/host_port_pair.h"
12 #include "net/base/net_util.h"
14 namespace local_discovery {
16 struct ServiceDescription;
18 struct DeviceDescription {
19 enum ConnectionState {
20 ONLINE,
21 OFFLINE,
22 CONNECTING,
23 NOT_CONFIGURED,
24 UNKNOWN
27 DeviceDescription();
28 ~DeviceDescription();
30 void FillFromServiceDescription(
31 const ServiceDescription& service_description);
33 // Display attributes
34 std::string name;
35 std::string description;
37 // Functional attributes
38 std::string url;
39 std::string id;
40 std::string type;
41 int version;
42 ConnectionState connection_state;
44 // Attributes related to local HTTP
45 net::HostPortPair address;
46 net::IPAddressNumber ip_address;
47 base::Time last_seen;
50 } // namespace local_discovery
52 #endif // CHROME_BROWSER_LOCAL_DISCOVERY_DEVICE_DESCRIPTION_H_