blob: cd7440069c659b05fcd36f21bce804b6ed3feeef [file] [log] [blame]
// Copyright 2017 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/components/tether/network_configuration_remover.h"
#include "base/bind.h"
#include "base/values.h"
#include "chromeos/components/multidevice/logging/logging.h"
#include "chromeos/network/managed_network_configuration_handler.h"
namespace {
void RemoveConfigurationSuccessCallback(const std::string& path) {
PA_LOG(VERBOSE) << "Successfully removed Wi-Fi network with path " << path
<< ".";
}
void RemoveConfigurationFailureCallback(
const std::string& path,
const std::string& error_name,
std::unique_ptr<base::DictionaryValue> error_data) {
PA_LOG(WARNING) << "Failed to remove Wi-Fi network with path " << path
<< ". Error:" << error_name << ".";
}
} // namespace
namespace chromeos {
namespace tether {
NetworkConfigurationRemover::NetworkConfigurationRemover(
ManagedNetworkConfigurationHandler* managed_network_configuration_handler)
: managed_network_configuration_handler_(
managed_network_configuration_handler) {}
NetworkConfigurationRemover::~NetworkConfigurationRemover() = default;
void NetworkConfigurationRemover::RemoveNetworkConfigurationByPath(
const std::string& wifi_network_path) {
managed_network_configuration_handler_->RemoveConfiguration(
wifi_network_path,
base::Bind(&RemoveConfigurationSuccessCallback, wifi_network_path),
base::Bind(&RemoveConfigurationFailureCallback, wifi_network_path));
}
} // namespace tether
} // namespace chromeos