blob: 009897855db8a96c39c79a4fc5b5fd2aebea1fe2 [file] [log] [blame]
Darin Petkov096b3472012-05-15 10:26:22 +02001// 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_DEVICE_PROXY_INTERFACE_
6#define SHILL_WIMAX_DEVICE_PROXY_INTERFACE_
7
8#include <string>
9
10#include <base/basictypes.h>
11
12#include "shill/callbacks.h"
13
14namespace shill {
15
16class Error;
17
18// These are the methods that a WiMaxManager.Device proxy must support. The
19// interface is provided so that it can be mocked in tests.
20class WiMaxDeviceProxyInterface {
21 public:
22 virtual ~WiMaxDeviceProxyInterface() {}
23
24 virtual void Enable(Error *error,
25 const ResultCallback &callback,
26 int timeout) = 0;
27 virtual void Disable(Error *error,
28 const ResultCallback &callback,
29 int timeout) = 0;
30 virtual void Connect(Error *error,
31 const ResultCallback &callback,
32 int timeout) = 0;
33 virtual void Disconnect(Error *error,
34 const ResultCallback &callback,
35 int timeout) = 0;
36
37 // Properties.
38 virtual uint8 Index(Error *error) = 0;
39 virtual std::string Name(Error *error) = 0;
40};
41
42} // namespace shill
43
44#endif // SHILL_WIMAX_DEVICE_PROXY_INTERFACE_H_