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/session_manager_client.h" | 5 #include "chromeos/dbus/session_manager_client.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 #include <sys/socket.h> | 9 #include <sys/socket.h> |
10 | 10 |
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 dbus::MethodCall method_call( | 373 dbus::MethodCall method_call( |
374 login_manager::kSessionManagerInterface, | 374 login_manager::kSessionManagerInterface, |
375 login_manager::kSessionManagerGetArcStartTimeTicks); | 375 login_manager::kSessionManagerGetArcStartTimeTicks); |
376 | 376 |
377 session_manager_proxy_->CallMethod( | 377 session_manager_proxy_->CallMethod( |
378 &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 378 &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
379 base::Bind(&SessionManagerClientImpl::OnGetArcStartTime, | 379 base::Bind(&SessionManagerClientImpl::OnGetArcStartTime, |
380 weak_ptr_factory_.GetWeakPtr(), callback)); | 380 weak_ptr_factory_.GetWeakPtr(), callback)); |
381 } | 381 } |
382 | 382 |
| 383 void RemoveArcData() override { |
| 384 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, |
| 385 login_manager::kSessionManagerRemoveArcData); |
| 386 session_manager_proxy_->CallMethod( |
| 387 &method_call, dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
| 388 base::Bind(&SessionManagerClientImpl::OnArcMethod, |
| 389 weak_ptr_factory_.GetWeakPtr(), |
| 390 login_manager::kSessionManagerRemoveArcData, ArcCallback())); |
| 391 } |
| 392 |
383 protected: | 393 protected: |
384 void Init(dbus::Bus* bus) override { | 394 void Init(dbus::Bus* bus) override { |
385 session_manager_proxy_ = bus->GetObjectProxy( | 395 session_manager_proxy_ = bus->GetObjectProxy( |
386 login_manager::kSessionManagerServiceName, | 396 login_manager::kSessionManagerServiceName, |
387 dbus::ObjectPath(login_manager::kSessionManagerServicePath)); | 397 dbus::ObjectPath(login_manager::kSessionManagerServicePath)); |
388 blocking_method_caller_.reset( | 398 blocking_method_caller_.reset( |
389 new BlockingMethodCaller(bus, session_manager_proxy_)); | 399 new BlockingMethodCaller(bus, session_manager_proxy_)); |
390 | 400 |
391 // Signals emitted on the session manager's interface. | 401 // Signals emitted on the session manager's interface. |
392 session_manager_proxy_->ConnectToSignal( | 402 session_manager_proxy_->ConnectToSignal( |
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
911 } | 921 } |
912 | 922 |
913 void StopArcInstance(const ArcCallback& callback) override { | 923 void StopArcInstance(const ArcCallback& callback) override { |
914 callback.Run(false); | 924 callback.Run(false); |
915 } | 925 } |
916 | 926 |
917 void GetArcStartTime(const GetArcStartTimeCallback& callback) override { | 927 void GetArcStartTime(const GetArcStartTimeCallback& callback) override { |
918 callback.Run(false, base::TimeTicks::Now()); | 928 callback.Run(false, base::TimeTicks::Now()); |
919 } | 929 } |
920 | 930 |
| 931 void RemoveArcData() override {} |
| 932 |
921 private: | 933 private: |
922 StubDelegate* delegate_; // Weak pointer; may be NULL. | 934 StubDelegate* delegate_; // Weak pointer; may be NULL. |
923 base::ObserverList<Observer> observers_; | 935 base::ObserverList<Observer> observers_; |
924 std::string device_policy_; | 936 std::string device_policy_; |
925 bool screen_is_locked_; | 937 bool screen_is_locked_; |
926 | 938 |
927 DISALLOW_COPY_AND_ASSIGN(SessionManagerClientStubImpl); | 939 DISALLOW_COPY_AND_ASSIGN(SessionManagerClientStubImpl); |
928 }; | 940 }; |
929 | 941 |
930 SessionManagerClient::SessionManagerClient() { | 942 SessionManagerClient::SessionManagerClient() { |
931 } | 943 } |
932 | 944 |
933 SessionManagerClient::~SessionManagerClient() { | 945 SessionManagerClient::~SessionManagerClient() { |
934 } | 946 } |
935 | 947 |
936 SessionManagerClient* SessionManagerClient::Create( | 948 SessionManagerClient* SessionManagerClient::Create( |
937 DBusClientImplementationType type) { | 949 DBusClientImplementationType type) { |
938 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) | 950 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) |
939 return new SessionManagerClientImpl(); | 951 return new SessionManagerClientImpl(); |
940 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); | 952 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); |
941 return new SessionManagerClientStubImpl(); | 953 return new SessionManagerClientStubImpl(); |
942 } | 954 } |
943 | 955 |
944 } // namespace chromeos | 956 } // namespace chromeos |
OLD | NEW |