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/ibus/ibus_panel_service.h" | 5 #include "chromeos/dbus/ibus/ibus_panel_service.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "chromeos/dbus/ibus/ibus_constants.h" | 10 #include "chromeos/dbus/ibus/ibus_constants.h" |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
82 exported_object_->ExportMethod( | 82 exported_object_->ExportMethod( |
83 ibus::panel::kServiceInterface, | 83 ibus::panel::kServiceInterface, |
84 ibus::panel::kRegisterPropertiesMethod, | 84 ibus::panel::kRegisterPropertiesMethod, |
85 base::Bind(&IBusPanelServiceImpl::RegisterProperties, | 85 base::Bind(&IBusPanelServiceImpl::RegisterProperties, |
86 weak_ptr_factory_.GetWeakPtr()), | 86 weak_ptr_factory_.GetWeakPtr()), |
87 base::Bind(&IBusPanelServiceImpl::OnMethodExported, | 87 base::Bind(&IBusPanelServiceImpl::OnMethodExported, |
88 weak_ptr_factory_.GetWeakPtr())); | 88 weak_ptr_factory_.GetWeakPtr())); |
89 | 89 |
90 exported_object_->ExportMethod( | 90 exported_object_->ExportMethod( |
91 ibus::panel::kServiceInterface, | 91 ibus::panel::kServiceInterface, |
92 ibus::panel::kUpdatePropertiesMethod, | 92 ibus::panel::kUpdatePropertyMethod, |
93 base::Bind(&IBusPanelServiceImpl::UpdateProperties, | 93 base::Bind(&IBusPanelServiceImpl::UpdateProperty, |
94 weak_ptr_factory_.GetWeakPtr()), | 94 weak_ptr_factory_.GetWeakPtr()), |
95 base::Bind(&IBusPanelServiceImpl::OnMethodExported, | 95 base::Bind(&IBusPanelServiceImpl::OnMethodExported, |
96 weak_ptr_factory_.GetWeakPtr())); | 96 weak_ptr_factory_.GetWeakPtr())); |
97 } | 97 } |
98 | 98 |
99 virtual ~IBusPanelServiceImpl() { | 99 virtual ~IBusPanelServiceImpl() { |
100 bus_->UnregisterExportedObject( | 100 bus_->UnregisterExportedObject( |
101 dbus::ObjectPath(ibus::panel::kServicePath)); | 101 dbus::ObjectPath(ibus::panel::kServicePath)); |
102 } | 102 } |
103 | 103 |
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
282 DLOG(WARNING) << "RegisterProperties called with incorrect parameters:" | 282 DLOG(WARNING) << "RegisterProperties called with incorrect parameters:" |
283 << method_call->ToString(); | 283 << method_call->ToString(); |
284 return; | 284 return; |
285 } | 285 } |
286 property_handler_->RegisterProperties(properties); | 286 property_handler_->RegisterProperties(properties); |
287 | 287 |
288 dbus::Response* response = dbus::Response::FromMethodCall(method_call); | 288 dbus::Response* response = dbus::Response::FromMethodCall(method_call); |
289 response_sender.Run(response); | 289 response_sender.Run(response); |
290 } | 290 } |
291 | 291 |
292 // Handles UpdateProperties method call from ibus-daemon. | 292 // Handles UpdateProperty method call from ibus-daemon. |
293 void UpdateProperties(dbus::MethodCall* method_call, | 293 void UpdateProperty(dbus::MethodCall* method_call, |
294 dbus::ExportedObject::ResponseSender response_sender) { | 294 dbus::ExportedObject::ResponseSender response_sender) { |
295 if (!property_handler_) | 295 if (!property_handler_) |
296 return; | 296 return; |
297 | 297 |
298 dbus::MessageReader reader(method_call); | 298 dbus::MessageReader reader(method_call); |
299 ibus::IBusPropertyList properties; | 299 ibus::IBusProperty property; |
300 if (!ibus::PopIBusPropertyList(&reader, &properties)) { | 300 if (!ibus::PopIBusProperty(&reader, &property)) { |
301 DLOG(WARNING) << "RegisterProperties called with incorrect parameters:" | 301 DLOG(WARNING) << "RegisterProperties called with incorrect parameters:" |
302 << method_call->ToString(); | 302 << method_call->ToString(); |
303 return; | 303 return; |
304 } | 304 } |
305 property_handler_->UpdateProperties(properties); | 305 property_handler_->UpdateProperty(property); |
306 | 306 |
307 dbus::Response* response = dbus::Response::FromMethodCall(method_call); | 307 dbus::Response* response = dbus::Response::FromMethodCall(method_call); |
308 response_sender.Run(response); | 308 response_sender.Run(response); |
309 } | 309 } |
310 | 310 |
311 // Called when the method call is exported. | 311 // Called when the method call is exported. |
312 void OnMethodExported(const std::string& interface_name, | 312 void OnMethodExported(const std::string& interface_name, |
313 const std::string& method_name, | 313 const std::string& method_name, |
314 bool success) { | 314 bool success) { |
315 LOG_IF(WARNING, !success) << "Failed to export " | 315 LOG_IF(WARNING, !success) << "Failed to export " |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
363 dbus::Bus* bus) { | 363 dbus::Bus* bus) { |
364 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) { | 364 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) { |
365 return new IBusPanelServiceImpl(bus); | 365 return new IBusPanelServiceImpl(bus); |
366 } else { | 366 } else { |
367 return new IBusPanelServiceStubImpl(); | 367 return new IBusPanelServiceStubImpl(); |
368 } | 368 } |
369 } | 369 } |
370 | 370 |
371 } // namespace ibus | 371 } // namespace ibus |
372 } // namespace chromeos | 372 } // namespace chromeos |
OLD | NEW |