Index: chromeos/dbus/shill_profile_client_stub.cc |
diff --git a/chromeos/dbus/shill_profile_client_stub.cc b/chromeos/dbus/shill_profile_client_stub.cc |
deleted file mode 100644 |
index 05cdbb02f5b275872afb00d313d7955962ba21b5..0000000000000000000000000000000000000000 |
--- a/chromeos/dbus/shill_profile_client_stub.cc |
+++ /dev/null |
@@ -1,208 +0,0 @@ |
-// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "chromeos/dbus/shill_profile_client_stub.h" |
- |
-#include "base/bind.h" |
-#include "base/bind_helpers.h" |
-#include "base/message_loop/message_loop.h" |
-#include "base/stl_util.h" |
-#include "base/values.h" |
-#include "chromeos/dbus/dbus_thread_manager.h" |
-#include "chromeos/dbus/shill_manager_client.h" |
-#include "chromeos/dbus/shill_property_changed_observer.h" |
-#include "chromeos/dbus/shill_service_client.h" |
-#include "dbus/bus.h" |
-#include "dbus/message.h" |
-#include "dbus/object_path.h" |
-#include "dbus/values_util.h" |
-#include "third_party/cros_system_api/dbus/service_constants.h" |
- |
-namespace chromeos { |
- |
-struct ShillProfileClientStub::ProfileProperties { |
- base::DictionaryValue entries; |
- base::DictionaryValue properties; |
-}; |
- |
-namespace { |
- |
-void PassDictionary( |
- const ShillProfileClient::DictionaryValueCallbackWithoutStatus& callback, |
- const base::DictionaryValue* dictionary) { |
- callback.Run(*dictionary); |
-} |
- |
-} // namespace |
- |
-ShillProfileClientStub::ShillProfileClientStub() { |
-} |
- |
-ShillProfileClientStub::~ShillProfileClientStub() { |
- STLDeleteValues(&profiles_); |
-} |
- |
-void ShillProfileClientStub::Init(dbus::Bus* bus) { |
-} |
- |
-void ShillProfileClientStub::AddPropertyChangedObserver( |
- const dbus::ObjectPath& profile_path, |
- ShillPropertyChangedObserver* observer) { |
-} |
- |
-void ShillProfileClientStub::RemovePropertyChangedObserver( |
- const dbus::ObjectPath& profile_path, |
- ShillPropertyChangedObserver* observer) { |
-} |
- |
-void ShillProfileClientStub::GetProperties( |
- const dbus::ObjectPath& profile_path, |
- const DictionaryValueCallbackWithoutStatus& callback, |
- const ErrorCallback& error_callback) { |
- ProfileProperties* profile = GetProfile(profile_path, error_callback); |
- if (!profile) |
- return; |
- |
- scoped_ptr<base::DictionaryValue> properties(profile->properties.DeepCopy()); |
- base::ListValue* entry_paths = new base::ListValue; |
- properties->SetWithoutPathExpansion(shill::kEntriesProperty, entry_paths); |
- for (base::DictionaryValue::Iterator it(profile->entries); !it.IsAtEnd(); |
- it.Advance()) { |
- entry_paths->AppendString(it.key()); |
- } |
- |
- base::MessageLoop::current()->PostTask( |
- FROM_HERE, |
- base::Bind(&PassDictionary, callback, base::Owned(properties.release()))); |
-} |
- |
-void ShillProfileClientStub::GetEntry( |
- const dbus::ObjectPath& profile_path, |
- const std::string& entry_path, |
- const DictionaryValueCallbackWithoutStatus& callback, |
- const ErrorCallback& error_callback) { |
- ProfileProperties* profile = GetProfile(profile_path, error_callback); |
- if (!profile) |
- return; |
- |
- base::DictionaryValue* entry = NULL; |
- profile->entries.GetDictionaryWithoutPathExpansion(entry_path, &entry); |
- if (!entry) { |
- error_callback.Run("Error.InvalidProfileEntry", "Invalid profile entry"); |
- return; |
- } |
- |
- base::MessageLoop::current()->PostTask( |
- FROM_HERE, |
- base::Bind(&PassDictionary, callback, base::Owned(entry->DeepCopy()))); |
-} |
- |
-void ShillProfileClientStub::DeleteEntry(const dbus::ObjectPath& profile_path, |
- const std::string& entry_path, |
- const base::Closure& callback, |
- const ErrorCallback& error_callback) { |
- ProfileProperties* profile = GetProfile(profile_path, error_callback); |
- if (!profile) |
- return; |
- |
- if (!profile->entries.RemoveWithoutPathExpansion(entry_path, NULL)) { |
- error_callback.Run("Error.InvalidProfileEntry", entry_path); |
- return; |
- } |
- |
- base::StringValue profile_path_value(""); |
- DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface()-> |
- SetServiceProperty(entry_path, |
- shill::kProfileProperty, |
- profile_path_value); |
- |
- base::MessageLoop::current()->PostTask(FROM_HERE, callback); |
-} |
- |
-ShillProfileClient::TestInterface* ShillProfileClientStub::GetTestInterface() { |
- return this; |
-} |
- |
-void ShillProfileClientStub::AddProfile(const std::string& profile_path, |
- const std::string& userhash) { |
- if (GetProfile(dbus::ObjectPath(profile_path), ErrorCallback())) |
- return; |
- |
- ProfileProperties* profile = new ProfileProperties; |
- profile->properties.SetStringWithoutPathExpansion(shill::kUserHashProperty, |
- userhash); |
- profiles_[profile_path] = profile; |
- DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface()-> |
- AddProfile(profile_path); |
-} |
- |
-void ShillProfileClientStub::AddEntry(const std::string& profile_path, |
- const std::string& entry_path, |
- const base::DictionaryValue& properties) { |
- ProfileProperties* profile = GetProfile(dbus::ObjectPath(profile_path), |
- ErrorCallback()); |
- DCHECK(profile); |
- profile->entries.SetWithoutPathExpansion(entry_path, |
- properties.DeepCopy()); |
- DBusThreadManager::Get()->GetShillManagerClient()->GetTestInterface()-> |
- AddManagerService(entry_path, false /* visible */, false /* watch */); |
-} |
- |
-bool ShillProfileClientStub::AddService(const std::string& profile_path, |
- const std::string& service_path) { |
- ProfileProperties* profile = GetProfile(dbus::ObjectPath(profile_path), |
- ErrorCallback()); |
- if (!profile) { |
- LOG(ERROR) << "No matching profile: " << profile_path; |
- return false; |
- } |
- |
- ShillServiceClient::TestInterface* service_test = |
- DBusThreadManager::Get()->GetShillServiceClient()->GetTestInterface(); |
- const base::DictionaryValue* service_properties = |
- service_test->GetServiceProperties(service_path); |
- if (!service_properties) { |
- LOG(ERROR) << "No matching service: " << service_path; |
- return false; |
- } |
- std::string service_profile_path; |
- service_properties->GetStringWithoutPathExpansion(shill::kProfileProperty, |
- &service_profile_path); |
- if (!service_profile_path.empty() && service_profile_path != profile_path) { |
- LOG(ERROR) << "Service has non matching profile path: " |
- << service_profile_path; |
- return false; |
- } |
- |
- base::StringValue profile_path_value(profile_path); |
- service_test->SetServiceProperty(service_path, |
- shill::kProfileProperty, |
- profile_path_value); |
- profile->entries.SetWithoutPathExpansion(service_path, |
- service_properties->DeepCopy()); |
- return true; |
-} |
- |
-void ShillProfileClientStub::GetProfilePaths( |
- std::vector<std::string>* profiles) { |
- for (ProfileMap::iterator iter = profiles_.begin(); |
- iter != profiles_.end(); ++iter) { |
- profiles->push_back(iter->first); |
- } |
-} |
- |
-ShillProfileClientStub::ProfileProperties* ShillProfileClientStub::GetProfile( |
- const dbus::ObjectPath& profile_path, |
- const ErrorCallback& error_callback) { |
- ProfileMap::const_iterator found = profiles_.find(profile_path.value()); |
- if (found == profiles_.end()) { |
- if (!error_callback.is_null()) |
- error_callback.Run("Error.InvalidProfile", "Invalid profile"); |
- return NULL; |
- } |
- |
- return found->second; |
-} |
- |
-} // namespace chromeos |