blob: 3777ba6ff6e8c11f8affbfb94c836d7e6f04910c [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
Ben Chan4e5c1312012-05-18 18:45:38 -07005#ifndef SHILL_WIMAX_NETWORK_PROXY_INTERFACE_H_
6#define SHILL_WIMAX_NETWORK_PROXY_INTERFACE_H_
Darin Petkov9893d9c2012-05-17 15:27:31 -07007
8#include <string>
9
10#include <base/basictypes.h>
Ben Chan4e5c1312012-05-18 18:45:38 -070011#include <dbus-c++/dbus.h>
Darin Petkov9893d9c2012-05-17 15:27:31 -070012
13namespace shill {
14
15class Error;
16
17// These are the methods that a WiMaxManager.Network proxy must support. The
18// interface is provided so that it can be mocked in tests.
19class WiMaxNetworkProxyInterface {
20 public:
21 virtual ~WiMaxNetworkProxyInterface() {}
22
Ben Chan4e5c1312012-05-18 18:45:38 -070023 virtual DBus::Path proxy_object_path() const = 0;
24
Darin Petkov9893d9c2012-05-17 15:27:31 -070025 // Properties.
26 virtual uint32 Identifier(Error *error) = 0;
27 virtual std::string Name(Error *error) = 0;
28 virtual int Type(Error *error) = 0;
29 virtual int CINR(Error *error) = 0;
30 virtual int RSSI(Error *error) = 0;
Ben Chanac6e8362012-05-20 00:39:58 -070031 virtual int SignalStrength(Error *error) = 0;
Darin Petkov9893d9c2012-05-17 15:27:31 -070032};
33
34} // namespace shill
35
36#endif // SHILL_WIMAX_NETWORK_PROXY_INTERFACE_H_