1a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 2a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// found in the LICENSE file. 4a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 55f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)#include "chromeos/dbus/fake_debug_daemon_client.h" 6a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 7a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include <map> 8a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include <string> 9a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include <vector> 10a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 11a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "base/bind.h" 12a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "base/callback.h" 13a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "base/location.h" 14a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "base/message_loop/message_loop.h" 15a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 16a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)namespace chromeos { 17a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 18a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)FakeDebugDaemonClient::FakeDebugDaemonClient() {} 19a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 20a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)FakeDebugDaemonClient::~FakeDebugDaemonClient() {} 21a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 22a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::Init(dbus::Bus* bus) {} 23a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 245f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)void FakeDebugDaemonClient::DumpDebugLogs( 255f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) bool is_compressed, 265f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) base::File file, 275f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) scoped_refptr<base::TaskRunner> task_runner, 285f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) const GetDebugLogsCallback& callback) { 295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) callback.Run(true); 30a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 31a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 32a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::SetDebugMode(const std::string& subsystem, 33a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const SetDebugModeCallback& callback) { 34a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) callback.Run(false); 35a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 36a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::StartSystemTracing() {} 37a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 38a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)bool FakeDebugDaemonClient::RequestStopSystemTracing( 395f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) scoped_refptr<base::TaskRunner> task_runner, 40a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const StopSystemTracingCallback& callback) { 41a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::string no_data; 42a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) callback.Run(base::RefCountedString::TakeString(&no_data)); 43a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) return true; 44a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 45a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 46a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetRoutes(bool numeric, 47a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) bool ipv6, 48a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetRoutesCallback& callback) { 49a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::vector<std::string> empty; 50a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 51a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, empty)); 52a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 53a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 54a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetNetworkStatus( 55a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetNetworkStatusCallback& callback) { 56a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 57a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 58a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 59a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 60a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetModemStatus( 61a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetModemStatusCallback& callback) { 62a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 63a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 64a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 65a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 66a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetWiMaxStatus( 67a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetWiMaxStatusCallback& callback) { 68a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 69a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 70a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 71a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 72a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetNetworkInterfaces( 73a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetNetworkInterfacesCallback& callback) { 74a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 75a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 76a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 77a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 78a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetPerfData(uint32_t duration, 79a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const GetPerfDataCallback& callback) { 80a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::vector<uint8> data; 81a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, base::Bind(callback, data)); 82a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 83a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 84a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetScrubbedLogs(const GetLogsCallback& callback) { 85a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::map<std::string, std::string> sample; 86a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) sample["Sample Scrubbed Log"] = "Your email address is xxxxxxxx"; 87a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 88a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, sample)); 89a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 90a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 91a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetAllLogs(const GetLogsCallback& callback) { 92a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::map<std::string, std::string> sample; 93a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) sample["Sample Log"] = "Your email address is abc@abc.com"; 94a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 95a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, sample)); 96a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 97a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 98a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::GetUserLogFiles(const GetLogsCallback& callback) { 99a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) std::map<std::string, std::string> user_logs; 100a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) user_logs["preferences"] = "Preferences"; 101a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) user_logs["invalid_file"] = "Invalid File"; 102a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 103a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, true, user_logs)); 104a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 105a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 106a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::TestICMP(const std::string& ip_address, 107a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const TestICMPCallback& callback) { 108a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 109a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 110a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 111a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 112a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)void FakeDebugDaemonClient::TestICMPWithOptions( 113a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const std::string& ip_address, 114a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const std::map<std::string, std::string>& options, 115a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) const TestICMPCallback& callback) { 116a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::MessageLoop::current()->PostTask(FROM_HERE, 117a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) base::Bind(callback, false, "")); 118a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} 119a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) 120e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdochvoid FakeDebugDaemonClient::UploadCrashes() { 121e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch} 122e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch 123a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)} // namespace chromeos 124