Commit dd936623 authored by Oksana Zhuravlova's avatar Oksana Zhuravlova Committed by Commit Bot

Convert cloud_print.mojom to use mojo/public/mojom/base/values.mojom

This change also converts the minimum necessary amount of C++ code to pass
objects of base::Value by value instead of std::unique_ptr.

Bug: 646113,799482

Change-Id: Ic8f6b1f4c120bfd7d57e045a68eb1921b8e6ab5d
Reviewed-on: https://chromium-review.googlesource.com/987238
Commit-Queue: Oksana Zhuravlova <oksamyt@chromium.org>
Reviewed-by: default avatarLei Zhang <thestig@chromium.org>
Reviewed-by: default avatarTom Sepez <tsepez@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547966}
parent 94bad661
...@@ -200,7 +200,8 @@ void CloudPrintProxyService::EnableCloudPrintProxyWithRobot( ...@@ -200,7 +200,8 @@ void CloudPrintProxyService::EnableCloudPrintProxyWithRobot(
DCHECK(process_control->IsConnected()); DCHECK(process_control->IsConnected());
GetCloudPrintProxy().EnableCloudPrintProxyWithRobot( GetCloudPrintProxy().EnableCloudPrintProxyWithRobot(
robot_auth_code, robot_email, user_email, robot_auth_code, robot_email, user_email,
user_preferences->CreateDeepCopy()); std::move(*user_preferences->CreateDeepCopy()));
// Assume the IPC worked. // Assume the IPC worked.
profile_->GetPrefs()->SetString(prefs::kCloudPrintEmail, user_email); profile_->GetPrefs()->SetString(prefs::kCloudPrintEmail, user_email);
} }
......
...@@ -129,11 +129,10 @@ class MockCloudPrintProxy : public cloud_print::mojom::CloudPrint { ...@@ -129,11 +129,10 @@ class MockCloudPrintProxy : public cloud_print::mojom::CloudPrint {
void GetPrinters(GetPrintersCallback callback) override { NOTREACHED(); } void GetPrinters(GetPrintersCallback callback) override { NOTREACHED(); }
void DisableCloudPrintProxy() override { disabled_ = true; } void DisableCloudPrintProxy() override { disabled_ = true; }
void EnableCloudPrintProxyWithRobot( void EnableCloudPrintProxyWithRobot(const std::string& robot_auth_code,
const std::string& robot_auth_code, const std::string& robot_email,
const std::string& robot_email, const std::string& user_email,
const std::string& user_email, base::Value user_settings) override {
std::unique_ptr<base::DictionaryValue> user_settings) override {
enabled_ = true; enabled_ = true;
} }
......
...@@ -194,7 +194,7 @@ IN_PROC_BROWSER_TEST_F(ServiceProcessControlBrowserTest, LaunchAndReconnect) { ...@@ -194,7 +194,7 @@ IN_PROC_BROWSER_TEST_F(ServiceProcessControlBrowserTest, LaunchAndReconnect) {
ServiceProcessControl::GetInstance()->remote_interfaces().GetInterface( ServiceProcessControl::GetInstance()->remote_interfaces().GetInterface(
&cloud_print_proxy); &cloud_print_proxy);
cloud_print_proxy->EnableCloudPrintProxyWithRobot( cloud_print_proxy->EnableCloudPrintProxyWithRobot(
"", "", "", std::make_unique<base::DictionaryValue>()); "", "", "", base::Value(base::Value::Type::DICTIONARY));
ServiceProcessControl::GetInstance()->remote_interfaces().GetInterface( ServiceProcessControl::GetInstance()->remote_interfaces().GetInterface(
&cloud_print_proxy); &cloud_print_proxy);
......
...@@ -755,7 +755,7 @@ if (enable_print_preview && !is_chromeos) { ...@@ -755,7 +755,7 @@ if (enable_print_preview && !is_chromeos) {
"service_process.mojom", "service_process.mojom",
] ]
public_deps = [ public_deps = [
"//mojo/common:common_custom_types", "//mojo/public/mojom/base",
] ]
} }
} }
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
module cloud_print.mojom; module cloud_print.mojom;
import "mojo/common/values.mojom"; import "mojo/public/mojom/base/values.mojom";
// An interface for controlling cloud print running in a service process. // An interface for controlling cloud print running in a service process.
interface CloudPrint { interface CloudPrint {
...@@ -14,7 +14,7 @@ interface CloudPrint { ...@@ -14,7 +14,7 @@ interface CloudPrint {
string robot_auth_code, string robot_auth_code,
string robot_email, string robot_email,
string user_email, string user_email,
mojo.common.mojom.DictionaryValue user_settings); mojo_base.mojom.DictionaryValue user_settings);
// Tell the service process to disable the cloud proxy. // Tell the service process to disable the cloud proxy.
DisableCloudPrintProxy(); DisableCloudPrintProxy();
......
...@@ -32,9 +32,12 @@ void CloudPrintMessageHandler::EnableCloudPrintProxyWithRobot( ...@@ -32,9 +32,12 @@ void CloudPrintMessageHandler::EnableCloudPrintProxyWithRobot(
const std::string& robot_auth_code, const std::string& robot_auth_code,
const std::string& robot_email, const std::string& robot_email,
const std::string& user_email, const std::string& user_email,
std::unique_ptr<base::DictionaryValue> user_settings) { base::Value user_settings) {
std::unique_ptr<base::DictionaryValue> user_settings_dict =
base::DictionaryValue::From(
base::Value::ToUniquePtrValue(std::move(user_settings)));
proxy_provider_->GetCloudPrintProxy()->EnableForUserWithRobot( proxy_provider_->GetCloudPrintProxy()->EnableForUserWithRobot(
robot_auth_code, robot_email, user_email, *user_settings); robot_auth_code, robot_email, user_email, *user_settings_dict);
} }
void CloudPrintMessageHandler::GetCloudPrintProxyInfo( void CloudPrintMessageHandler::GetCloudPrintProxyInfo(
......
...@@ -11,10 +11,6 @@ ...@@ -11,10 +11,6 @@
#include "chrome/common/cloud_print.mojom.h" #include "chrome/common/cloud_print.mojom.h"
#include "chrome/service/cloud_print/cloud_print_proxy.h" #include "chrome/service/cloud_print/cloud_print_proxy.h"
namespace base {
class DictionaryValue;
}
namespace cloud_print { namespace cloud_print {
// Handles IPC messages for Cloud Print. Lives on the main thread. // Handles IPC messages for Cloud Print. Lives on the main thread.
...@@ -28,11 +24,10 @@ class CloudPrintMessageHandler : public cloud_print::mojom::CloudPrint { ...@@ -28,11 +24,10 @@ class CloudPrintMessageHandler : public cloud_print::mojom::CloudPrint {
private: private:
// cloud_print::mojom::CloudPrintProxy. // cloud_print::mojom::CloudPrintProxy.
void EnableCloudPrintProxyWithRobot( void EnableCloudPrintProxyWithRobot(const std::string& robot_auth_code,
const std::string& robot_auth_code, const std::string& robot_email,
const std::string& robot_email, const std::string& user_email,
const std::string& user_email, base::Value user_settings) override;
std::unique_ptr<base::DictionaryValue> user_settings) override;
void GetCloudPrintProxyInfo(GetCloudPrintProxyInfoCallback callback) override; void GetCloudPrintProxyInfo(GetCloudPrintProxyInfoCallback callback) override;
void GetPrinters(GetPrintersCallback callback) override; void GetPrinters(GetPrintersCallback callback) override;
void DisableCloudPrintProxy() override; void DisableCloudPrintProxy() override;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment