Commit b373d864 authored by Owen Min's avatar Owen Min Committed by Commit Bot

Update CloudPolicyClient.UploadChromeDesktopReport.

Using unique_ptr instead of references to avoid copy of protobuf later.

Bug: 812641
Change-Id: I847dcf99a7e475d51a04897942ea39c5c84ca47b
Reviewed-on: https://chromium-review.googlesource.com/999043Reviewed-by: default avatarMaksim Ivanov <emaxx@chromium.org>
Reviewed-by: default avatarRoger Tawa <rogerta@chromium.org>
Commit-Queue: Owen Min <zmin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#548815}
parent 4258b73b
...@@ -433,9 +433,10 @@ void CloudPolicyClient::UploadDeviceStatus( ...@@ -433,9 +433,10 @@ void CloudPolicyClient::UploadDeviceStatus(
} }
void CloudPolicyClient::UploadChromeDesktopReport( void CloudPolicyClient::UploadChromeDesktopReport(
const em::ChromeDesktopReportRequest& chrome_desktop_report, std::unique_ptr<em::ChromeDesktopReportRequest> chrome_desktop_report,
const CloudPolicyClient::StatusCallback& callback) { const CloudPolicyClient::StatusCallback& callback) {
CHECK(is_registered()); CHECK(is_registered());
DCHECK(chrome_desktop_report);
std::unique_ptr<DeviceManagementRequestJob> request_job(service_->CreateJob( std::unique_ptr<DeviceManagementRequestJob> request_job(service_->CreateJob(
DeviceManagementRequestJob::TYPE_CHROME_DESKTOP_REPORT, DeviceManagementRequestJob::TYPE_CHROME_DESKTOP_REPORT,
GetRequestContext())); GetRequestContext()));
...@@ -444,7 +445,8 @@ void CloudPolicyClient::UploadChromeDesktopReport( ...@@ -444,7 +445,8 @@ void CloudPolicyClient::UploadChromeDesktopReport(
request_job->SetClientID(client_id_); request_job->SetClientID(client_id_);
em::DeviceManagementRequest* request = request_job->GetRequest(); em::DeviceManagementRequest* request = request_job->GetRequest();
*request->mutable_chrome_desktop_report_request() = chrome_desktop_report; request->set_allocated_chrome_desktop_report_request(
chrome_desktop_report.release());
const DeviceManagementRequestJob::Callback job_callback = const DeviceManagementRequestJob::Callback job_callback =
base::Bind(&CloudPolicyClient::OnReportUploadCompleted, base::Bind(&CloudPolicyClient::OnReportUploadCompleted,
......
...@@ -201,7 +201,7 @@ class POLICY_EXPORT CloudPolicyClient { ...@@ -201,7 +201,7 @@ class POLICY_EXPORT CloudPolicyClient {
// in a registered state. |chrome_desktop_report| will be included in the // in a registered state. |chrome_desktop_report| will be included in the
// upload request. The |callback| will be called when the operation completes. // upload request. The |callback| will be called when the operation completes.
virtual void UploadChromeDesktopReport( virtual void UploadChromeDesktopReport(
const enterprise_management::ChromeDesktopReportRequest& std::unique_ptr<enterprise_management::ChromeDesktopReportRequest>
chrome_desktop_report, chrome_desktop_report,
const StatusCallback& callback); const StatusCallback& callback);
......
...@@ -1020,8 +1020,10 @@ TEST_F(CloudPolicyClientTest, UploadChromeDesktopReport) { ...@@ -1020,8 +1020,10 @@ TEST_F(CloudPolicyClientTest, UploadChromeDesktopReport) {
CloudPolicyClient::StatusCallback callback = CloudPolicyClient::StatusCallback callback =
base::Bind(&MockStatusCallbackObserver::OnCallbackComplete, base::Bind(&MockStatusCallbackObserver::OnCallbackComplete,
base::Unretained(&callback_observer_)); base::Unretained(&callback_observer_));
em::ChromeDesktopReportRequest chrome_desktop_report; std::unique_ptr<em::ChromeDesktopReportRequest> chrome_desktop_report =
client_->UploadChromeDesktopReport(chrome_desktop_report, callback); std::make_unique<em::ChromeDesktopReportRequest>();
client_->UploadChromeDesktopReport(std::move(chrome_desktop_report),
callback);
EXPECT_EQ(DM_STATUS_SUCCESS, client_->status()); EXPECT_EQ(DM_STATUS_SUCCESS, client_->status());
} }
......
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