Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Side by Side Diff: blimp/engine/feature/engine_settings_feature.cc

Issue 1933053003: Used oneof in blimp_message.proto (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed Kevin's comments Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "blimp/engine/feature/engine_settings_feature.h" 5 #include "blimp/engine/feature/engine_settings_feature.h"
6 6
7 #include "blimp/common/proto/blimp_message.pb.h" 7 #include "blimp/common/proto/blimp_message.pb.h"
8 #include "blimp/common/proto/settings.pb.h" 8 #include "blimp/common/proto/settings.pb.h"
9 #include "blimp/engine/app/settings_manager.h" 9 #include "blimp/engine/app/settings_manager.h"
10 #include "blimp/engine/common/blimp_content_client.h" 10 #include "blimp/engine/common/blimp_content_client.h"
11 #include "content/public/browser/render_view_host.h" 11 #include "content/public/browser/render_view_host.h"
12 #include "content/public/common/web_preferences.h" 12 #include "content/public/common/web_preferences.h"
13 #include "net/base/net_errors.h" 13 #include "net/base/net_errors.h"
14 14
15 namespace blimp { 15 namespace blimp {
16 namespace engine { 16 namespace engine {
17 17
18 EngineSettingsFeature::EngineSettingsFeature(SettingsManager* settings_manager) 18 EngineSettingsFeature::EngineSettingsFeature(SettingsManager* settings_manager)
19 : settings_manager_(settings_manager) { 19 : settings_manager_(settings_manager) {
20 DCHECK(settings_manager_); 20 DCHECK(settings_manager_);
21 } 21 }
22 22
23 EngineSettingsFeature::~EngineSettingsFeature() {} 23 EngineSettingsFeature::~EngineSettingsFeature() {}
24 24
25 void EngineSettingsFeature::ProcessMessage( 25 void EngineSettingsFeature::ProcessMessage(
26 std::unique_ptr<BlimpMessage> message, 26 std::unique_ptr<BlimpMessage> message,
27 const net::CompletionCallback& callback) { 27 const net::CompletionCallback& callback) {
28 DCHECK_EQ(message->type(), BlimpMessage::SETTINGS); 28 DCHECK_EQ(BlimpMessage::kSettings, message->feature_case());
Wez 2016/05/18 01:53:31 nit: DCHECK(has_settings())
shaktisahu 2016/05/18 03:55:42 As we discussed, it is better to keep the DCHECK_E
29 DCHECK(message->has_settings());
30 29
31 const SettingsMessage& settings = message->settings(); 30 const SettingsMessage& settings = message->settings();
32 DCHECK(settings.has_engine_settings()); 31 DCHECK(settings.has_engine_settings());
33 32
34 const EngineSettingsMessage& engine_settings = settings.engine_settings(); 33 const EngineSettingsMessage& engine_settings = settings.engine_settings();
35 ProcessSettings(engine_settings); 34 ProcessSettings(engine_settings);
36 35
37 callback.Run(net::OK); 36 callback.Run(net::OK);
38 } 37 }
39 38
40 void EngineSettingsFeature::ProcessSettings( 39 void EngineSettingsFeature::ProcessSettings(
41 const EngineSettingsMessage& engine_settings) { 40 const EngineSettingsMessage& engine_settings) {
42 if (engine_settings.has_record_whole_document()) { 41 if (engine_settings.has_record_whole_document()) {
43 EngineSettings settings = settings_manager_->GetEngineSettings(); 42 EngineSettings settings = settings_manager_->GetEngineSettings();
44 settings.record_whole_document = engine_settings.record_whole_document(); 43 settings.record_whole_document = engine_settings.record_whole_document();
45 settings_manager_->UpdateEngineSettings(settings); 44 settings_manager_->UpdateEngineSettings(settings);
46 } 45 }
47 46
48 // Set the client OS information for building user agent. 47 // Set the client OS information for building user agent.
49 if (engine_settings.has_client_os_info()) { 48 if (engine_settings.has_client_os_info()) {
50 std::string client_os_info = engine_settings.client_os_info(); 49 std::string client_os_info = engine_settings.client_os_info();
51 SetClientOSInfo(client_os_info); 50 SetClientOSInfo(client_os_info);
52 } 51 }
53 } 52 }
54 53
55 } // namespace engine 54 } // namespace engine
56 } // namespace blimp 55 } // namespace blimp
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698