OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/common/create_blimp_message.h" | 5 #include "blimp/common/create_blimp_message.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "blimp/common/proto/blimp_message.pb.h" | 10 #include "blimp/common/proto/blimp_message.pb.h" |
11 #include "blimp/common/proto/compositor.pb.h" | 11 #include "blimp/common/proto/compositor.pb.h" |
12 #include "blimp/common/proto/input.pb.h" | 12 #include "blimp/common/proto/input.pb.h" |
13 #include "blimp/common/proto/render_widget.pb.h" | 13 #include "blimp/common/proto/render_widget.pb.h" |
14 #include "blimp/common/proto/settings.pb.h" | 14 #include "blimp/common/proto/settings.pb.h" |
15 #include "blimp/common/proto/tab_control.pb.h" | 15 #include "blimp/common/proto/tab_control.pb.h" |
16 | 16 |
17 namespace blimp { | 17 namespace blimp { |
18 | 18 |
19 std::unique_ptr<BlimpMessage> CreateBlimpMessage( | 19 std::unique_ptr<BlimpMessage> CreateBlimpMessage( |
20 CompositorMessage** compositor_message, | 20 CompositorMessage** compositor_message, |
21 int target_tab_id) { | 21 int target_tab_id) { |
22 DCHECK(compositor_message); | |
23 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 22 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
24 output->set_type(BlimpMessage::COMPOSITOR); | |
25 output->set_target_tab_id(target_tab_id); | 23 output->set_target_tab_id(target_tab_id); |
26 *compositor_message = output->mutable_compositor(); | 24 *compositor_message = output->mutable_compositor(); |
27 return output; | 25 return output; |
28 } | 26 } |
29 | 27 |
30 std::unique_ptr<BlimpMessage> CreateBlimpMessage( | 28 std::unique_ptr<BlimpMessage> CreateBlimpMessage( |
31 TabControlMessage** control_message) { | 29 TabControlMessage** control_message) { |
32 DCHECK(control_message); | |
33 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 30 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
34 output->set_type(BlimpMessage::TAB_CONTROL); | |
35 *control_message = output->mutable_tab_control(); | 31 *control_message = output->mutable_tab_control(); |
36 return output; | 32 return output; |
37 } | 33 } |
38 | 34 |
39 std::unique_ptr<BlimpMessage> CreateBlimpMessage(InputMessage** input_message) { | 35 std::unique_ptr<BlimpMessage> CreateBlimpMessage(InputMessage** input_message) { |
40 DCHECK(input_message); | |
41 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 36 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
42 output->set_type(BlimpMessage::INPUT); | |
43 *input_message = output->mutable_input(); | 37 *input_message = output->mutable_input(); |
44 return output; | 38 return output; |
45 } | 39 } |
46 | 40 |
47 std::unique_ptr<BlimpMessage> CreateBlimpMessage( | 41 std::unique_ptr<BlimpMessage> CreateBlimpMessage( |
48 NavigationMessage** navigation_message, | 42 NavigationMessage** navigation_message, |
49 int target_tab_id) { | 43 int target_tab_id) { |
50 DCHECK(navigation_message); | |
51 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 44 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
52 output->set_type(BlimpMessage::NAVIGATION); | |
53 output->set_target_tab_id(target_tab_id); | 45 output->set_target_tab_id(target_tab_id); |
54 *navigation_message = output->mutable_navigation(); | 46 *navigation_message = output->mutable_navigation(); |
55 return output; | 47 return output; |
56 } | 48 } |
57 | 49 |
58 std::unique_ptr<BlimpMessage> CreateBlimpMessage(ImeMessage** ime_message, | 50 std::unique_ptr<BlimpMessage> CreateBlimpMessage(ImeMessage** ime_message, |
59 int target_tab_id) { | 51 int target_tab_id) { |
60 DCHECK(ime_message); | |
61 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 52 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
62 output->set_type(BlimpMessage::IME); | |
63 output->set_target_tab_id(target_tab_id); | 53 output->set_target_tab_id(target_tab_id); |
64 *ime_message = output->mutable_ime(); | 54 *ime_message = output->mutable_ime(); |
65 return output; | 55 return output; |
66 } | 56 } |
67 | 57 |
68 std::unique_ptr<BlimpMessage> CreateBlimpMessage( | 58 std::unique_ptr<BlimpMessage> CreateBlimpMessage( |
69 RenderWidgetMessage** render_widget_message, | 59 RenderWidgetMessage** render_widget_message, |
70 int target_tab_id) { | 60 int target_tab_id) { |
71 DCHECK(render_widget_message); | |
72 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 61 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
73 output->set_type(BlimpMessage::RENDER_WIDGET); | |
74 output->set_target_tab_id(target_tab_id); | 62 output->set_target_tab_id(target_tab_id); |
75 *render_widget_message = output->mutable_render_widget(); | 63 *render_widget_message = output->mutable_render_widget(); |
76 return output; | 64 return output; |
77 } | 65 } |
78 | 66 |
79 std::unique_ptr<BlimpMessage> CreateBlimpMessage(SizeMessage** size_message) { | 67 std::unique_ptr<BlimpMessage> CreateBlimpMessage(SizeMessage** size_message) { |
80 DCHECK(size_message); | 68 DCHECK(size_message); |
81 TabControlMessage* control_message; | 69 TabControlMessage* control_message; |
82 std::unique_ptr<BlimpMessage> output = CreateBlimpMessage(&control_message); | 70 std::unique_ptr<BlimpMessage> output = CreateBlimpMessage(&control_message); |
83 control_message->set_type(TabControlMessage::SIZE); | 71 control_message->mutable_size(); |
84 *size_message = control_message->mutable_size(); | 72 *size_message = control_message->mutable_size(); |
85 return output; | 73 return output; |
86 } | 74 } |
87 | 75 |
88 std::unique_ptr<BlimpMessage> CreateBlimpMessage( | 76 std::unique_ptr<BlimpMessage> CreateBlimpMessage( |
89 EngineSettingsMessage** engine_settings) { | 77 EngineSettingsMessage** engine_settings) { |
90 DCHECK(engine_settings); | |
91 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 78 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
92 output->set_type(BlimpMessage::SETTINGS); | |
93 *engine_settings = output->mutable_settings()->mutable_engine_settings(); | 79 *engine_settings = output->mutable_settings()->mutable_engine_settings(); |
94 return output; | 80 return output; |
95 } | 81 } |
96 | 82 |
97 std::unique_ptr<BlimpMessage> CreateStartConnectionMessage( | 83 std::unique_ptr<BlimpMessage> CreateStartConnectionMessage( |
98 const std::string& client_token, | 84 const std::string& client_token, |
99 int protocol_version) { | 85 int protocol_version) { |
100 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 86 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
101 output->set_type(BlimpMessage::PROTOCOL_CONTROL); | |
102 | 87 |
103 ProtocolControlMessage* control_message = output->mutable_protocol_control(); | 88 ProtocolControlMessage* control_message = output->mutable_protocol_control(); |
104 control_message->set_type(ProtocolControlMessage::START_CONNECTION); | 89 control_message->mutable_start_connection(); |
105 | 90 |
106 StartConnectionMessage* start_connection_message = | 91 StartConnectionMessage* start_connection_message = |
107 control_message->mutable_start_connection(); | 92 control_message->mutable_start_connection(); |
108 start_connection_message->set_client_token(client_token); | 93 start_connection_message->set_client_token(client_token); |
109 start_connection_message->set_protocol_version(protocol_version); | 94 start_connection_message->set_protocol_version(protocol_version); |
110 | 95 |
111 return output; | 96 return output; |
112 } | 97 } |
113 | 98 |
114 std::unique_ptr<BlimpMessage> CreateCheckpointAckMessage( | 99 std::unique_ptr<BlimpMessage> CreateCheckpointAckMessage( |
115 int64_t checkpoint_id) { | 100 int64_t checkpoint_id) { |
116 std::unique_ptr<BlimpMessage> output(new BlimpMessage); | 101 std::unique_ptr<BlimpMessage> output(new BlimpMessage); |
117 output->set_type(BlimpMessage::PROTOCOL_CONTROL); | |
118 | 102 |
119 ProtocolControlMessage* control_message = output->mutable_protocol_control(); | 103 ProtocolControlMessage* control_message = output->mutable_protocol_control(); |
120 control_message->set_type(ProtocolControlMessage::CHECKPOINT_ACK); | 104 control_message->mutable_checkpoint_ack(); |
121 | 105 |
122 CheckpointAckMessage* checkpoint_ack_message = | 106 CheckpointAckMessage* checkpoint_ack_message = |
123 control_message->mutable_checkpoint_ack(); | 107 control_message->mutable_checkpoint_ack(); |
124 checkpoint_ack_message->set_checkpoint_id(checkpoint_id); | 108 checkpoint_ack_message->set_checkpoint_id(checkpoint_id); |
125 | 109 |
126 return output; | 110 return output; |
127 } | 111 } |
128 | 112 |
129 } // namespace blimp | 113 } // namespace blimp |
OLD | NEW |