blob: 3902af40d7669c0b43e7749b52e799a64685b9c0 [file] [log] [blame]
Darin Petkov9893d9c2012-05-17 15:27:31 -07001// Copyright (c) 2012 The Chromium OS 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.
4
5#ifndef SHILL_WIMAX_NETWORK_PROXY_H_
6#define SHILL_WIMAX_NETWORK_PROXY_H_
7
8#include "shill/dbus_bindings/wimax_manager-network.h"
9#include "shill/wimax_network_proxy_interface.h"
10
11namespace shill {
12
13class WiMaxNetworkProxy : public WiMaxNetworkProxyInterface {
14 public:
15 // Constructs a WiMaxManager.Network DBus object proxy at |path|.
16 WiMaxNetworkProxy(DBus::Connection *connection,
17 const DBus::Path &path);
18 virtual ~WiMaxNetworkProxy();
19
20 // Inherited from WiMaxNetwokProxyInterface.
Ben Chan4e5c1312012-05-18 18:45:38 -070021 virtual DBus::Path proxy_object_path() const;
Darin Petkov9893d9c2012-05-17 15:27:31 -070022 virtual uint32 Identifier(Error *error);
23 virtual std::string Name(Error *error);
24 virtual int Type(Error *error);
25 virtual int CINR(Error *error);
26 virtual int RSSI(Error *error);
27
28 private:
29 class Proxy : public org::chromium::WiMaxManager::Network_proxy,
30 public DBus::ObjectProxy {
31 public:
32 Proxy(DBus::Connection *connection, const DBus::Path &path);
33 virtual ~Proxy();
34
35 private:
36 // Signal callbacks inherited from WiMaxManager::Network_proxy.
37 // [None]
38
39 // Method callbacks inherited from WiMaxManager::Network_proxy.
40 // [None]
41
42 DISALLOW_COPY_AND_ASSIGN(Proxy);
43 };
44
45 static void FromDBusError(const DBus::Error &dbus_error, Error *error);
46
47 Proxy proxy_;
48
49 DISALLOW_COPY_AND_ASSIGN(WiMaxNetworkProxy);
50};
51
52} // namespace shill
53
54#endif // SHILL_WIMAX_NETWORK_PROXY_H_