| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROMEOS_DBUS_DBUS_METHOD_CALL_STATUS_H_ |
| #define CHROMEOS_DBUS_DBUS_METHOD_CALL_STATUS_H_ |
| |
| #include <string> |
| |
| #include "base/callback.h" |
| #include "chromeos/chromeos_export.h" |
| |
| namespace dbus { |
| |
| class ObjectPath; |
| |
| } // namespace dbus |
| |
| namespace chromeos { |
| |
| // An enum to describe whether or not a DBus method call succeeded. |
| enum DBusMethodCallStatus { |
| DBUS_METHOD_CALL_FAILURE, |
| DBUS_METHOD_CALL_SUCCESS, |
| }; |
| |
| // A callback to handle responses of methods without results. |
| typedef base::Callback<void( |
| DBusMethodCallStatus call_status)> VoidDBusMethodCallback; |
| |
| // A callback to handle responses of methods returning a bool value. |
| typedef base::Callback<void(DBusMethodCallStatus call_status, |
| bool result)> BoolDBusMethodCallback; |
| |
| // A callback to handle responses of methods returning a string value. |
| typedef base::Callback<void( |
| DBusMethodCallStatus call_status, |
| const std::string& result)> StringDBusMethodCallback; |
| |
| // A callback to handle responses of methods returning a boolean value. |
| typedef base::Callback<void( |
| DBusMethodCallStatus call_status, |
| bool result)> BooleanDBusMethodCallback; |
| |
| // A callback to handle responses of methods returning a ObjectPath value. |
| typedef base::Callback<void( |
| DBusMethodCallStatus call_status, |
| const dbus::ObjectPath& result)> ObjectPathDBusMethodCallback; |
| |
| // A callback to handle responses of methods returning a ObjectPath value that |
| // doesn't get call status. |
| typedef base::Callback<void(const dbus::ObjectPath& result)> ObjectPathCallback; |
| |
| // Returns an empty callback that does nothing. |
| CHROMEOS_EXPORT VoidDBusMethodCallback EmptyVoidDBusMethodCallback(); |
| |
| } // namespace chromeos |
| |
| #endif // CHROMEOS_DBUS_DBUS_METHOD_CALL_STATUS_H_ |