blob: 80dcb3bd5ae6bdf24bf91e1e9cb3413dfcf9a7a3 [file] [log] [blame]
Eric Shienbrood5de44ab2011-12-05 10:46:27 -05001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Darin Petkove604f702011-07-28 15:51:17 -07002// 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_MODEM_SIMPLE_PROXY_INTERFACE_
6#define SHILL_MODEM_SIMPLE_PROXY_INTERFACE_
7
Eric Shienbrood9a245532012-03-07 14:20:39 -05008#include "shill/callbacks.h"
Darin Petkove604f702011-07-28 15:51:17 -07009#include "shill/dbus_properties.h"
10
11namespace shill {
12
Eric Shienbrood5de44ab2011-12-05 10:46:27 -050013class Error;
14
Darin Petkove604f702011-07-28 15:51:17 -070015// These are the methods that a ModemManager.Modem.Simple proxy must
16// support. The interface is provided so that it can be mocked in tests.
Eric Shienbrood9a245532012-03-07 14:20:39 -050017// All calls are made asynchronously.
Darin Petkove604f702011-07-28 15:51:17 -070018class ModemSimpleProxyInterface {
19 public:
20 virtual ~ModemSimpleProxyInterface() {}
21
Eric Shienbrood9a245532012-03-07 14:20:39 -050022 virtual void GetModemStatus(Error *error,
23 const DBusPropertyMapCallback &callback,
24 int timeout) = 0;
Eric Shienbrood5de44ab2011-12-05 10:46:27 -050025 virtual void Connect(const DBusPropertiesMap &properties,
Eric Shienbrood9a245532012-03-07 14:20:39 -050026 Error *error, const ResultCallback &callback,
27 int timeout) = 0;
Darin Petkove604f702011-07-28 15:51:17 -070028};
29
30} // namespace shill
Darin Petkove604f702011-07-28 15:51:17 -070031#endif // SHILL_MODEM_SIMPLE_PROXY_INTERFACE_