| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chromeos/dbus/services/liveness_service_provider.h" | 5 #include "chromeos/dbus/services/liveness_service_provider.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "dbus/bus.h" | 8 #include "dbus/bus.h" |
| 9 #include "dbus/message.h" | 9 #include "dbus/message.h" |
| 10 #include "third_party/cros_system_api/dbus/service_constants.h" | 10 #include "third_party/cros_system_api/dbus/service_constants.h" |
| 11 | 11 |
| 12 namespace chromeos { | 12 namespace chromeos { |
| 13 | 13 |
| 14 LivenessServiceProvider::LivenessServiceProvider( | 14 LivenessServiceProvider::LivenessServiceProvider() : weak_ptr_factory_(this) {} |
| 15 const std::string& service_interface) | |
| 16 : service_interface_(service_interface), weak_ptr_factory_(this) {} | |
| 17 | 15 |
| 18 LivenessServiceProvider::~LivenessServiceProvider() {} | 16 LivenessServiceProvider::~LivenessServiceProvider() {} |
| 19 | 17 |
| 20 void LivenessServiceProvider::Start( | 18 void LivenessServiceProvider::Start( |
| 21 scoped_refptr<dbus::ExportedObject> exported_object) { | 19 scoped_refptr<dbus::ExportedObject> exported_object) { |
| 22 exported_object->ExportMethod( | 20 exported_object->ExportMethod( |
| 23 service_interface_, kLivenessServiceCheckLivenessMethod, | 21 kLibCrosServiceInterface, |
| 22 kCheckLiveness, |
| 24 base::Bind(&LivenessServiceProvider::CheckLiveness, | 23 base::Bind(&LivenessServiceProvider::CheckLiveness, |
| 25 weak_ptr_factory_.GetWeakPtr()), | 24 weak_ptr_factory_.GetWeakPtr()), |
| 26 base::Bind(&LivenessServiceProvider::OnExported, | 25 base::Bind(&LivenessServiceProvider::OnExported, |
| 27 weak_ptr_factory_.GetWeakPtr())); | 26 weak_ptr_factory_.GetWeakPtr())); |
| 28 } | 27 } |
| 29 | 28 |
| 30 void LivenessServiceProvider::OnExported(const std::string& interface_name, | 29 void LivenessServiceProvider::OnExported(const std::string& interface_name, |
| 31 const std::string& method_name, | 30 const std::string& method_name, |
| 32 bool success) { | 31 bool success) { |
| 33 if (!success) { | 32 if (!success) { |
| 34 LOG(ERROR) << "Failed to export " << interface_name << "." | 33 LOG(ERROR) << "Failed to export " << interface_name << "." |
| 35 << method_name; | 34 << method_name; |
| 36 } | 35 } |
| 37 } | 36 } |
| 38 | 37 |
| 39 void LivenessServiceProvider::CheckLiveness( | 38 void LivenessServiceProvider::CheckLiveness( |
| 40 dbus::MethodCall* method_call, | 39 dbus::MethodCall* method_call, |
| 41 dbus::ExportedObject::ResponseSender response_sender) { | 40 dbus::ExportedObject::ResponseSender response_sender) { |
| 42 response_sender.Run(dbus::Response::FromMethodCall(method_call)); | 41 response_sender.Run(dbus::Response::FromMethodCall(method_call)); |
| 43 } | 42 } |
| 44 | 43 |
| 45 } // namespace chromeos | 44 } // namespace chromeos |
| OLD | NEW |