OLD | NEW |
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 #ifndef MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 5 #ifndef MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
6 #define MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 6 #define MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <queue> | 9 #include <queue> |
10 #include <unordered_map> | 10 #include <unordered_map> |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 ports::ScopedMessage message); | 138 ports::ScopedMessage message); |
139 void AcceptIncomingMessages(); | 139 void AcceptIncomingMessages(); |
140 void DropAllPeers(); | 140 void DropAllPeers(); |
141 | 141 |
142 // ports::NodeDelegate: | 142 // ports::NodeDelegate: |
143 void GenerateRandomPortName(ports::PortName* port_name) override; | 143 void GenerateRandomPortName(ports::PortName* port_name) override; |
144 void AllocMessage(size_t num_header_bytes, | 144 void AllocMessage(size_t num_header_bytes, |
145 ports::ScopedMessage* message) override; | 145 ports::ScopedMessage* message) override; |
146 void ForwardMessage(const ports::NodeName& node, | 146 void ForwardMessage(const ports::NodeName& node, |
147 ports::ScopedMessage message) override; | 147 ports::ScopedMessage message) override; |
| 148 void BroadcastMessage(ports::ScopedMessage message) override; |
148 void PortStatusChanged(const ports::PortRef& port) override; | 149 void PortStatusChanged(const ports::PortRef& port) override; |
149 | 150 |
150 // NodeChannel::Delegate: | 151 // NodeChannel::Delegate: |
151 void OnAcceptChild(const ports::NodeName& from_node, | 152 void OnAcceptChild(const ports::NodeName& from_node, |
152 const ports::NodeName& parent_name, | 153 const ports::NodeName& parent_name, |
153 const ports::NodeName& token) override; | 154 const ports::NodeName& token) override; |
154 void OnAcceptParent(const ports::NodeName& from_node, | 155 void OnAcceptParent(const ports::NodeName& from_node, |
155 const ports::NodeName& token, | 156 const ports::NodeName& token, |
156 const ports::NodeName& child_name) override; | 157 const ports::NodeName& child_name) override; |
157 void OnAddBrokerClient(const ports::NodeName& from_node, | 158 void OnAddBrokerClient(const ports::NodeName& from_node, |
158 const ports::NodeName& client_name, | 159 const ports::NodeName& client_name, |
159 base::ProcessHandle process_handle) override; | 160 base::ProcessHandle process_handle) override; |
160 void OnBrokerClientAdded(const ports::NodeName& from_node, | 161 void OnBrokerClientAdded(const ports::NodeName& from_node, |
161 const ports::NodeName& client_name, | 162 const ports::NodeName& client_name, |
162 ScopedPlatformHandle broker_channel) override; | 163 ScopedPlatformHandle broker_channel) override; |
163 void OnAcceptBrokerClient(const ports::NodeName& from_node, | 164 void OnAcceptBrokerClient(const ports::NodeName& from_node, |
164 const ports::NodeName& broker_name, | 165 const ports::NodeName& broker_name, |
165 ScopedPlatformHandle broker_channel) override; | 166 ScopedPlatformHandle broker_channel) override; |
166 void OnPortsMessage(Channel::MessagePtr message) override; | 167 void OnPortsMessage(Channel::MessagePtr message) override; |
167 void OnRequestPortMerge(const ports::NodeName& from_node, | 168 void OnRequestPortMerge(const ports::NodeName& from_node, |
168 const ports::PortName& connector_port_name, | 169 const ports::PortName& connector_port_name, |
169 const std::string& token) override; | 170 const std::string& token) override; |
170 void OnRequestIntroduction(const ports::NodeName& from_node, | 171 void OnRequestIntroduction(const ports::NodeName& from_node, |
171 const ports::NodeName& name) override; | 172 const ports::NodeName& name) override; |
172 void OnIntroduce(const ports::NodeName& from_node, | 173 void OnIntroduce(const ports::NodeName& from_node, |
173 const ports::NodeName& name, | 174 const ports::NodeName& name, |
174 ScopedPlatformHandle channel_handle) override; | 175 ScopedPlatformHandle channel_handle) override; |
| 176 void OnBroadcast(Channel::MessagePtr message) override; |
175 #if defined(OS_WIN) || (defined(OS_MACOSX) && !defined(OS_IOS)) | 177 #if defined(OS_WIN) || (defined(OS_MACOSX) && !defined(OS_IOS)) |
176 void OnRelayPortsMessage(const ports::NodeName& from_node, | 178 void OnRelayPortsMessage(const ports::NodeName& from_node, |
177 base::ProcessHandle from_process, | 179 base::ProcessHandle from_process, |
178 const ports::NodeName& destination, | 180 const ports::NodeName& destination, |
179 Channel::MessagePtr message) override; | 181 Channel::MessagePtr message) override; |
180 #endif | 182 #endif |
181 void OnChannelError(const ports::NodeName& from_node) override; | 183 void OnChannelError(const ports::NodeName& from_node) override; |
182 #if defined(OS_MACOSX) && !defined(OS_IOS) | 184 #if defined(OS_MACOSX) && !defined(OS_IOS) |
183 MachPortRelay* GetMachPortRelay() override; | 185 MachPortRelay* GetMachPortRelay() override; |
184 #endif | 186 #endif |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
281 std::unique_ptr<MachPortRelay> mach_port_relay_; | 283 std::unique_ptr<MachPortRelay> mach_port_relay_; |
282 #endif | 284 #endif |
283 | 285 |
284 DISALLOW_COPY_AND_ASSIGN(NodeController); | 286 DISALLOW_COPY_AND_ASSIGN(NodeController); |
285 }; | 287 }; |
286 | 288 |
287 } // namespace edk | 289 } // namespace edk |
288 } // namespace mojo | 290 } // namespace mojo |
289 | 291 |
290 #endif // MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ | 292 #endif // MOJO_EDK_SYSTEM_NODE_CONTROLLER_H_ |
OLD | NEW |