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/debug_daemon_client.h" | 5 #include "chromeos/dbus/debug_daemon_client.h" |
6 | 6 |
7 #include <fcntl.h> | 7 #include <fcntl.h> |
8 #include <unistd.h> | 8 #include <unistd.h> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 30 matching lines...) Expand all Loading... |
41 class DebugDaemonClientImpl : public DebugDaemonClient { | 41 class DebugDaemonClientImpl : public DebugDaemonClient { |
42 public: | 42 public: |
43 DebugDaemonClientImpl() : debugdaemon_proxy_(NULL), weak_ptr_factory_(this) {} | 43 DebugDaemonClientImpl() : debugdaemon_proxy_(NULL), weak_ptr_factory_(this) {} |
44 | 44 |
45 virtual ~DebugDaemonClientImpl() {} | 45 virtual ~DebugDaemonClientImpl() {} |
46 | 46 |
47 // DebugDaemonClient override. | 47 // DebugDaemonClient override. |
48 virtual void DumpDebugLogs(bool is_compressed, | 48 virtual void DumpDebugLogs(bool is_compressed, |
49 base::File file, | 49 base::File file, |
50 scoped_refptr<base::TaskRunner> task_runner, | 50 scoped_refptr<base::TaskRunner> task_runner, |
51 const GetDebugLogsCallback& callback) OVERRIDE { | 51 const GetDebugLogsCallback& callback) override { |
52 dbus::FileDescriptor* file_descriptor = new dbus::FileDescriptor; | 52 dbus::FileDescriptor* file_descriptor = new dbus::FileDescriptor; |
53 file_descriptor->PutValue(file.TakePlatformFile()); | 53 file_descriptor->PutValue(file.TakePlatformFile()); |
54 // Punt descriptor validity check to a worker thread; on return we'll | 54 // Punt descriptor validity check to a worker thread; on return we'll |
55 // issue the D-Bus request to stop tracing and collect results. | 55 // issue the D-Bus request to stop tracing and collect results. |
56 task_runner->PostTaskAndReply( | 56 task_runner->PostTaskAndReply( |
57 FROM_HERE, | 57 FROM_HERE, |
58 base::Bind(&dbus::FileDescriptor::CheckValidity, | 58 base::Bind(&dbus::FileDescriptor::CheckValidity, |
59 base::Unretained(file_descriptor)), | 59 base::Unretained(file_descriptor)), |
60 base::Bind(&DebugDaemonClientImpl::OnCheckValidityGetDebugLogs, | 60 base::Bind(&DebugDaemonClientImpl::OnCheckValidityGetDebugLogs, |
61 weak_ptr_factory_.GetWeakPtr(), | 61 weak_ptr_factory_.GetWeakPtr(), |
62 is_compressed, | 62 is_compressed, |
63 base::Owned(file_descriptor), | 63 base::Owned(file_descriptor), |
64 callback)); | 64 callback)); |
65 } | 65 } |
66 | 66 |
67 virtual void SetDebugMode(const std::string& subsystem, | 67 virtual void SetDebugMode(const std::string& subsystem, |
68 const SetDebugModeCallback& callback) OVERRIDE { | 68 const SetDebugModeCallback& callback) override { |
69 dbus::MethodCall method_call(debugd::kDebugdInterface, | 69 dbus::MethodCall method_call(debugd::kDebugdInterface, |
70 debugd::kSetDebugMode); | 70 debugd::kSetDebugMode); |
71 dbus::MessageWriter writer(&method_call); | 71 dbus::MessageWriter writer(&method_call); |
72 writer.AppendString(subsystem); | 72 writer.AppendString(subsystem); |
73 debugdaemon_proxy_->CallMethod( | 73 debugdaemon_proxy_->CallMethod( |
74 &method_call, | 74 &method_call, |
75 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 75 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
76 base::Bind(&DebugDaemonClientImpl::OnSetDebugMode, | 76 base::Bind(&DebugDaemonClientImpl::OnSetDebugMode, |
77 weak_ptr_factory_.GetWeakPtr(), | 77 weak_ptr_factory_.GetWeakPtr(), |
78 callback)); | 78 callback)); |
79 } | 79 } |
80 | 80 |
81 virtual void GetRoutes(bool numeric, bool ipv6, | 81 virtual void GetRoutes(bool numeric, bool ipv6, |
82 const GetRoutesCallback& callback) OVERRIDE { | 82 const GetRoutesCallback& callback) override { |
83 dbus::MethodCall method_call(debugd::kDebugdInterface, | 83 dbus::MethodCall method_call(debugd::kDebugdInterface, |
84 debugd::kGetRoutes); | 84 debugd::kGetRoutes); |
85 dbus::MessageWriter writer(&method_call); | 85 dbus::MessageWriter writer(&method_call); |
86 dbus::MessageWriter sub_writer(NULL); | 86 dbus::MessageWriter sub_writer(NULL); |
87 writer.OpenArray("{sv}", &sub_writer); | 87 writer.OpenArray("{sv}", &sub_writer); |
88 dbus::MessageWriter elem_writer(NULL); | 88 dbus::MessageWriter elem_writer(NULL); |
89 sub_writer.OpenDictEntry(&elem_writer); | 89 sub_writer.OpenDictEntry(&elem_writer); |
90 elem_writer.AppendString("numeric"); | 90 elem_writer.AppendString("numeric"); |
91 elem_writer.AppendVariantOfBool(numeric); | 91 elem_writer.AppendVariantOfBool(numeric); |
92 sub_writer.CloseContainer(&elem_writer); | 92 sub_writer.CloseContainer(&elem_writer); |
93 sub_writer.OpenDictEntry(&elem_writer); | 93 sub_writer.OpenDictEntry(&elem_writer); |
94 elem_writer.AppendString("v6"); | 94 elem_writer.AppendString("v6"); |
95 elem_writer.AppendVariantOfBool(ipv6); | 95 elem_writer.AppendVariantOfBool(ipv6); |
96 sub_writer.CloseContainer(&elem_writer); | 96 sub_writer.CloseContainer(&elem_writer); |
97 writer.CloseContainer(&sub_writer); | 97 writer.CloseContainer(&sub_writer); |
98 debugdaemon_proxy_->CallMethod( | 98 debugdaemon_proxy_->CallMethod( |
99 &method_call, | 99 &method_call, |
100 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 100 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
101 base::Bind(&DebugDaemonClientImpl::OnGetRoutes, | 101 base::Bind(&DebugDaemonClientImpl::OnGetRoutes, |
102 weak_ptr_factory_.GetWeakPtr(), | 102 weak_ptr_factory_.GetWeakPtr(), |
103 callback)); | 103 callback)); |
104 } | 104 } |
105 | 105 |
106 virtual void GetNetworkStatus(const GetNetworkStatusCallback& callback) | 106 virtual void GetNetworkStatus(const GetNetworkStatusCallback& callback) |
107 OVERRIDE { | 107 override { |
108 dbus::MethodCall method_call(debugd::kDebugdInterface, | 108 dbus::MethodCall method_call(debugd::kDebugdInterface, |
109 debugd::kGetNetworkStatus); | 109 debugd::kGetNetworkStatus); |
110 debugdaemon_proxy_->CallMethod( | 110 debugdaemon_proxy_->CallMethod( |
111 &method_call, | 111 &method_call, |
112 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 112 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
113 base::Bind(&DebugDaemonClientImpl::OnGetNetworkStatus, | 113 base::Bind(&DebugDaemonClientImpl::OnGetNetworkStatus, |
114 weak_ptr_factory_.GetWeakPtr(), | 114 weak_ptr_factory_.GetWeakPtr(), |
115 callback)); | 115 callback)); |
116 } | 116 } |
117 | 117 |
118 virtual void GetModemStatus(const GetModemStatusCallback& callback) | 118 virtual void GetModemStatus(const GetModemStatusCallback& callback) |
119 OVERRIDE { | 119 override { |
120 dbus::MethodCall method_call(debugd::kDebugdInterface, | 120 dbus::MethodCall method_call(debugd::kDebugdInterface, |
121 debugd::kGetModemStatus); | 121 debugd::kGetModemStatus); |
122 debugdaemon_proxy_->CallMethod( | 122 debugdaemon_proxy_->CallMethod( |
123 &method_call, | 123 &method_call, |
124 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 124 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
125 base::Bind(&DebugDaemonClientImpl::OnGetModemStatus, | 125 base::Bind(&DebugDaemonClientImpl::OnGetModemStatus, |
126 weak_ptr_factory_.GetWeakPtr(), | 126 weak_ptr_factory_.GetWeakPtr(), |
127 callback)); | 127 callback)); |
128 } | 128 } |
129 | 129 |
130 virtual void GetWiMaxStatus(const GetWiMaxStatusCallback& callback) | 130 virtual void GetWiMaxStatus(const GetWiMaxStatusCallback& callback) |
131 OVERRIDE { | 131 override { |
132 dbus::MethodCall method_call(debugd::kDebugdInterface, | 132 dbus::MethodCall method_call(debugd::kDebugdInterface, |
133 debugd::kGetWiMaxStatus); | 133 debugd::kGetWiMaxStatus); |
134 debugdaemon_proxy_->CallMethod( | 134 debugdaemon_proxy_->CallMethod( |
135 &method_call, | 135 &method_call, |
136 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 136 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
137 base::Bind(&DebugDaemonClientImpl::OnGetWiMaxStatus, | 137 base::Bind(&DebugDaemonClientImpl::OnGetWiMaxStatus, |
138 weak_ptr_factory_.GetWeakPtr(), | 138 weak_ptr_factory_.GetWeakPtr(), |
139 callback)); | 139 callback)); |
140 } | 140 } |
141 | 141 |
142 virtual void GetNetworkInterfaces( | 142 virtual void GetNetworkInterfaces( |
143 const GetNetworkInterfacesCallback& callback) OVERRIDE { | 143 const GetNetworkInterfacesCallback& callback) override { |
144 dbus::MethodCall method_call(debugd::kDebugdInterface, | 144 dbus::MethodCall method_call(debugd::kDebugdInterface, |
145 debugd::kGetInterfaces); | 145 debugd::kGetInterfaces); |
146 debugdaemon_proxy_->CallMethod( | 146 debugdaemon_proxy_->CallMethod( |
147 &method_call, | 147 &method_call, |
148 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 148 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
149 base::Bind(&DebugDaemonClientImpl::OnGetNetworkInterfaces, | 149 base::Bind(&DebugDaemonClientImpl::OnGetNetworkInterfaces, |
150 weak_ptr_factory_.GetWeakPtr(), | 150 weak_ptr_factory_.GetWeakPtr(), |
151 callback)); | 151 callback)); |
152 } | 152 } |
153 | 153 |
154 virtual void GetPerfData(uint32_t duration, | 154 virtual void GetPerfData(uint32_t duration, |
155 const GetPerfDataCallback& callback) OVERRIDE { | 155 const GetPerfDataCallback& callback) override { |
156 dbus::MethodCall method_call(debugd::kDebugdInterface, | 156 dbus::MethodCall method_call(debugd::kDebugdInterface, |
157 debugd::kGetRichPerfData); | 157 debugd::kGetRichPerfData); |
158 dbus::MessageWriter writer(&method_call); | 158 dbus::MessageWriter writer(&method_call); |
159 writer.AppendUint32(duration); | 159 writer.AppendUint32(duration); |
160 | 160 |
161 debugdaemon_proxy_->CallMethod( | 161 debugdaemon_proxy_->CallMethod( |
162 &method_call, | 162 &method_call, |
163 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 163 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
164 base::Bind(&DebugDaemonClientImpl::OnGetPerfData, | 164 base::Bind(&DebugDaemonClientImpl::OnGetPerfData, |
165 weak_ptr_factory_.GetWeakPtr(), | 165 weak_ptr_factory_.GetWeakPtr(), |
166 callback)); | 166 callback)); |
167 } | 167 } |
168 | 168 |
169 virtual void GetScrubbedLogs(const GetLogsCallback& callback) OVERRIDE { | 169 virtual void GetScrubbedLogs(const GetLogsCallback& callback) override { |
170 dbus::MethodCall method_call(debugd::kDebugdInterface, | 170 dbus::MethodCall method_call(debugd::kDebugdInterface, |
171 debugd::kGetFeedbackLogs); | 171 debugd::kGetFeedbackLogs); |
172 debugdaemon_proxy_->CallMethod( | 172 debugdaemon_proxy_->CallMethod( |
173 &method_call, | 173 &method_call, |
174 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 174 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
175 base::Bind(&DebugDaemonClientImpl::OnGetAllLogs, | 175 base::Bind(&DebugDaemonClientImpl::OnGetAllLogs, |
176 weak_ptr_factory_.GetWeakPtr(), | 176 weak_ptr_factory_.GetWeakPtr(), |
177 callback)); | 177 callback)); |
178 } | 178 } |
179 | 179 |
180 virtual void GetAllLogs(const GetLogsCallback& callback) | 180 virtual void GetAllLogs(const GetLogsCallback& callback) |
181 OVERRIDE { | 181 override { |
182 dbus::MethodCall method_call(debugd::kDebugdInterface, | 182 dbus::MethodCall method_call(debugd::kDebugdInterface, |
183 debugd::kGetAllLogs); | 183 debugd::kGetAllLogs); |
184 debugdaemon_proxy_->CallMethod( | 184 debugdaemon_proxy_->CallMethod( |
185 &method_call, | 185 &method_call, |
186 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 186 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
187 base::Bind(&DebugDaemonClientImpl::OnGetAllLogs, | 187 base::Bind(&DebugDaemonClientImpl::OnGetAllLogs, |
188 weak_ptr_factory_.GetWeakPtr(), | 188 weak_ptr_factory_.GetWeakPtr(), |
189 callback)); | 189 callback)); |
190 } | 190 } |
191 | 191 |
192 virtual void GetUserLogFiles( | 192 virtual void GetUserLogFiles( |
193 const GetLogsCallback& callback) OVERRIDE { | 193 const GetLogsCallback& callback) override { |
194 dbus::MethodCall method_call(debugd::kDebugdInterface, | 194 dbus::MethodCall method_call(debugd::kDebugdInterface, |
195 debugd::kGetUserLogFiles); | 195 debugd::kGetUserLogFiles); |
196 debugdaemon_proxy_->CallMethod( | 196 debugdaemon_proxy_->CallMethod( |
197 &method_call, | 197 &method_call, |
198 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 198 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
199 base::Bind(&DebugDaemonClientImpl::OnGetUserLogFiles, | 199 base::Bind(&DebugDaemonClientImpl::OnGetUserLogFiles, |
200 weak_ptr_factory_.GetWeakPtr(), | 200 weak_ptr_factory_.GetWeakPtr(), |
201 callback)); | 201 callback)); |
202 } | 202 } |
203 | 203 |
204 virtual void StartSystemTracing() OVERRIDE { | 204 virtual void StartSystemTracing() override { |
205 dbus::MethodCall method_call( | 205 dbus::MethodCall method_call( |
206 debugd::kDebugdInterface, | 206 debugd::kDebugdInterface, |
207 debugd::kSystraceStart); | 207 debugd::kSystraceStart); |
208 dbus::MessageWriter writer(&method_call); | 208 dbus::MessageWriter writer(&method_call); |
209 writer.AppendString("all"); // TODO(sleffler) parameterize category list | 209 writer.AppendString("all"); // TODO(sleffler) parameterize category list |
210 | 210 |
211 DVLOG(1) << "Requesting a systrace start"; | 211 DVLOG(1) << "Requesting a systrace start"; |
212 debugdaemon_proxy_->CallMethod( | 212 debugdaemon_proxy_->CallMethod( |
213 &method_call, | 213 &method_call, |
214 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 214 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
215 base::Bind(&DebugDaemonClientImpl::OnStartMethod, | 215 base::Bind(&DebugDaemonClientImpl::OnStartMethod, |
216 weak_ptr_factory_.GetWeakPtr())); | 216 weak_ptr_factory_.GetWeakPtr())); |
217 } | 217 } |
218 | 218 |
219 virtual bool RequestStopSystemTracing( | 219 virtual bool RequestStopSystemTracing( |
220 scoped_refptr<base::TaskRunner> task_runner, | 220 scoped_refptr<base::TaskRunner> task_runner, |
221 const StopSystemTracingCallback& callback) OVERRIDE { | 221 const StopSystemTracingCallback& callback) override { |
222 if (pipe_reader_ != NULL) { | 222 if (pipe_reader_ != NULL) { |
223 LOG(ERROR) << "Busy doing StopSystemTracing"; | 223 LOG(ERROR) << "Busy doing StopSystemTracing"; |
224 return false; | 224 return false; |
225 } | 225 } |
226 | 226 |
227 pipe_reader_.reset(new PipeReaderForString( | 227 pipe_reader_.reset(new PipeReaderForString( |
228 task_runner, | 228 task_runner, |
229 base::Bind(&DebugDaemonClientImpl::OnIOComplete, | 229 base::Bind(&DebugDaemonClientImpl::OnIOComplete, |
230 weak_ptr_factory_.GetWeakPtr()))); | 230 weak_ptr_factory_.GetWeakPtr()))); |
231 | 231 |
232 base::File pipe_write_end = pipe_reader_->StartIO(); | 232 base::File pipe_write_end = pipe_reader_->StartIO(); |
233 // Create dbus::FileDescriptor on the worker thread; on return we'll | 233 // Create dbus::FileDescriptor on the worker thread; on return we'll |
234 // issue the D-Bus request to stop tracing and collect results. | 234 // issue the D-Bus request to stop tracing and collect results. |
235 base::PostTaskAndReplyWithResult( | 235 base::PostTaskAndReplyWithResult( |
236 task_runner.get(), | 236 task_runner.get(), |
237 FROM_HERE, | 237 FROM_HERE, |
238 base::Bind( | 238 base::Bind( |
239 &DebugDaemonClientImpl::CreateFileDescriptorToStopSystemTracing, | 239 &DebugDaemonClientImpl::CreateFileDescriptorToStopSystemTracing, |
240 base::Passed(&pipe_write_end)), | 240 base::Passed(&pipe_write_end)), |
241 base::Bind( | 241 base::Bind( |
242 &DebugDaemonClientImpl::OnCreateFileDescriptorRequestStopSystem, | 242 &DebugDaemonClientImpl::OnCreateFileDescriptorRequestStopSystem, |
243 weak_ptr_factory_.GetWeakPtr(), | 243 weak_ptr_factory_.GetWeakPtr(), |
244 callback)); | 244 callback)); |
245 return true; | 245 return true; |
246 } | 246 } |
247 | 247 |
248 virtual void TestICMP(const std::string& ip_address, | 248 virtual void TestICMP(const std::string& ip_address, |
249 const TestICMPCallback& callback) OVERRIDE { | 249 const TestICMPCallback& callback) override { |
250 dbus::MethodCall method_call(debugd::kDebugdInterface, | 250 dbus::MethodCall method_call(debugd::kDebugdInterface, |
251 debugd::kTestICMP); | 251 debugd::kTestICMP); |
252 dbus::MessageWriter writer(&method_call); | 252 dbus::MessageWriter writer(&method_call); |
253 writer.AppendString(ip_address); | 253 writer.AppendString(ip_address); |
254 debugdaemon_proxy_->CallMethod( | 254 debugdaemon_proxy_->CallMethod( |
255 &method_call, | 255 &method_call, |
256 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 256 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
257 base::Bind(&DebugDaemonClientImpl::OnTestICMP, | 257 base::Bind(&DebugDaemonClientImpl::OnTestICMP, |
258 weak_ptr_factory_.GetWeakPtr(), | 258 weak_ptr_factory_.GetWeakPtr(), |
259 callback)); | 259 callback)); |
260 } | 260 } |
261 | 261 |
262 virtual void TestICMPWithOptions( | 262 virtual void TestICMPWithOptions( |
263 const std::string& ip_address, | 263 const std::string& ip_address, |
264 const std::map<std::string, std::string>& options, | 264 const std::map<std::string, std::string>& options, |
265 const TestICMPCallback& callback) OVERRIDE { | 265 const TestICMPCallback& callback) override { |
266 dbus::MethodCall method_call(debugd::kDebugdInterface, | 266 dbus::MethodCall method_call(debugd::kDebugdInterface, |
267 debugd::kTestICMPWithOptions); | 267 debugd::kTestICMPWithOptions); |
268 dbus::MessageWriter writer(&method_call); | 268 dbus::MessageWriter writer(&method_call); |
269 dbus::MessageWriter sub_writer(NULL); | 269 dbus::MessageWriter sub_writer(NULL); |
270 dbus::MessageWriter elem_writer(NULL); | 270 dbus::MessageWriter elem_writer(NULL); |
271 | 271 |
272 // Write the host. | 272 // Write the host. |
273 writer.AppendString(ip_address); | 273 writer.AppendString(ip_address); |
274 | 274 |
275 // Write the options. | 275 // Write the options. |
276 writer.OpenArray("{ss}", &sub_writer); | 276 writer.OpenArray("{ss}", &sub_writer); |
277 std::map<std::string, std::string>::const_iterator it; | 277 std::map<std::string, std::string>::const_iterator it; |
278 for (it = options.begin(); it != options.end(); ++it) { | 278 for (it = options.begin(); it != options.end(); ++it) { |
279 sub_writer.OpenDictEntry(&elem_writer); | 279 sub_writer.OpenDictEntry(&elem_writer); |
280 elem_writer.AppendString(it->first); | 280 elem_writer.AppendString(it->first); |
281 elem_writer.AppendString(it->second); | 281 elem_writer.AppendString(it->second); |
282 sub_writer.CloseContainer(&elem_writer); | 282 sub_writer.CloseContainer(&elem_writer); |
283 } | 283 } |
284 writer.CloseContainer(&sub_writer); | 284 writer.CloseContainer(&sub_writer); |
285 | 285 |
286 // Call the function. | 286 // Call the function. |
287 debugdaemon_proxy_->CallMethod( | 287 debugdaemon_proxy_->CallMethod( |
288 &method_call, | 288 &method_call, |
289 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 289 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
290 base::Bind(&DebugDaemonClientImpl::OnTestICMP, | 290 base::Bind(&DebugDaemonClientImpl::OnTestICMP, |
291 weak_ptr_factory_.GetWeakPtr(), | 291 weak_ptr_factory_.GetWeakPtr(), |
292 callback)); | 292 callback)); |
293 } | 293 } |
294 | 294 |
295 virtual void UploadCrashes() OVERRIDE { | 295 virtual void UploadCrashes() override { |
296 dbus::MethodCall method_call(debugd::kDebugdInterface, | 296 dbus::MethodCall method_call(debugd::kDebugdInterface, |
297 debugd::kUploadCrashes); | 297 debugd::kUploadCrashes); |
298 debugdaemon_proxy_->CallMethod( | 298 debugdaemon_proxy_->CallMethod( |
299 &method_call, | 299 &method_call, |
300 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, | 300 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, |
301 base::Bind(&DebugDaemonClientImpl::OnStartMethod, | 301 base::Bind(&DebugDaemonClientImpl::OnStartMethod, |
302 weak_ptr_factory_.GetWeakPtr())); | 302 weak_ptr_factory_.GetWeakPtr())); |
303 } | 303 } |
304 | 304 |
305 protected: | 305 protected: |
306 virtual void Init(dbus::Bus* bus) OVERRIDE { | 306 virtual void Init(dbus::Bus* bus) override { |
307 debugdaemon_proxy_ = | 307 debugdaemon_proxy_ = |
308 bus->GetObjectProxy(debugd::kDebugdServiceName, | 308 bus->GetObjectProxy(debugd::kDebugdServiceName, |
309 dbus::ObjectPath(debugd::kDebugdServicePath)); | 309 dbus::ObjectPath(debugd::kDebugdServicePath)); |
310 } | 310 } |
311 | 311 |
312 private: | 312 private: |
313 // Called when a CheckValidity response is received. | 313 // Called when a CheckValidity response is received. |
314 void OnCheckValidityGetDebugLogs(bool is_compressed, | 314 void OnCheckValidityGetDebugLogs(bool is_compressed, |
315 dbus::FileDescriptor* file_descriptor, | 315 dbus::FileDescriptor* file_descriptor, |
316 const GetDebugLogsCallback& callback) { | 316 const GetDebugLogsCallback& callback) { |
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
545 DebugDaemonClient::EmptyStopSystemTracingCallback() { | 545 DebugDaemonClient::EmptyStopSystemTracingCallback() { |
546 return base::Bind(&EmptyStopSystemTracingCallbackBody); | 546 return base::Bind(&EmptyStopSystemTracingCallbackBody); |
547 } | 547 } |
548 | 548 |
549 // static | 549 // static |
550 DebugDaemonClient* DebugDaemonClient::Create() { | 550 DebugDaemonClient* DebugDaemonClient::Create() { |
551 return new DebugDaemonClientImpl(); | 551 return new DebugDaemonClientImpl(); |
552 } | 552 } |
553 | 553 |
554 } // namespace chromeos | 554 } // namespace chromeos |
OLD | NEW |