OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 IPC_IPC_CHANNEL_PROXY_H_ | 5 #ifndef IPC_IPC_CHANNEL_PROXY_H_ |
6 #define IPC_IPC_CHANNEL_PROXY_H_ | 6 #define IPC_IPC_CHANNEL_PROXY_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
274 mojo::ScopedInterfaceEndpointHandle handle); | 274 mojo::ScopedInterfaceEndpointHandle handle); |
275 | 275 |
276 protected: | 276 protected: |
277 friend class base::RefCountedThreadSafe<Context>; | 277 friend class base::RefCountedThreadSafe<Context>; |
278 ~Context() override; | 278 ~Context() override; |
279 | 279 |
280 // IPC::Listener methods: | 280 // IPC::Listener methods: |
281 bool OnMessageReceived(const Message& message) override; | 281 bool OnMessageReceived(const Message& message) override; |
282 void OnChannelConnected(int32_t peer_pid) override; | 282 void OnChannelConnected(int32_t peer_pid) override; |
283 void OnChannelError() override; | 283 void OnChannelError() override; |
| 284 void OnAssociatedInterfaceRequest( |
| 285 const std::string& interface_name, |
| 286 mojo::ScopedInterfaceEndpointHandle handle) override; |
284 | 287 |
285 // Like OnMessageReceived but doesn't try the filters. | 288 // Like OnMessageReceived but doesn't try the filters. |
286 bool OnMessageReceivedNoFilter(const Message& message); | 289 bool OnMessageReceivedNoFilter(const Message& message); |
287 | 290 |
288 // Gives the filters a chance at processing |message|. | 291 // Gives the filters a chance at processing |message|. |
289 // Returns true if the message was processed, false otherwise. | 292 // Returns true if the message was processed, false otherwise. |
290 bool TryFilters(const Message& message); | 293 bool TryFilters(const Message& message); |
291 | 294 |
292 void PauseChannel(); | 295 void PauseChannel(); |
293 void UnpauseChannel(bool flush); | 296 void UnpauseChannel(bool flush); |
(...skipping 24 matching lines...) Expand all Loading... |
318 // Methods called on the IO thread. | 321 // Methods called on the IO thread. |
319 void OnSendMessage(std::unique_ptr<Message> message_ptr); | 322 void OnSendMessage(std::unique_ptr<Message> message_ptr); |
320 void OnAddFilter(); | 323 void OnAddFilter(); |
321 void OnRemoveFilter(MessageFilter* filter); | 324 void OnRemoveFilter(MessageFilter* filter); |
322 | 325 |
323 // Methods called on the listener thread. | 326 // Methods called on the listener thread. |
324 void AddFilter(MessageFilter* filter); | 327 void AddFilter(MessageFilter* filter); |
325 void OnDispatchConnected(); | 328 void OnDispatchConnected(); |
326 void OnDispatchError(); | 329 void OnDispatchError(); |
327 void OnDispatchBadMessage(const Message& message); | 330 void OnDispatchBadMessage(const Message& message); |
| 331 void OnDispatchAssociatedInterfaceRequest( |
| 332 const std::string& interface_name, |
| 333 mojo::ScopedInterfaceEndpointHandle handle); |
328 | 334 |
329 void SendFromThisThread(Message* message); | 335 void SendFromThisThread(Message* message); |
330 void ClearChannel(); | 336 void ClearChannel(); |
331 | 337 |
332 mojo::AssociatedGroup* associated_group() { return &associated_group_; } | 338 mojo::AssociatedGroup* associated_group() { return &associated_group_; } |
333 | 339 |
334 void AddGenericAssociatedInterface( | 340 void AddGenericAssociatedInterface( |
335 const std::string& name, | 341 const std::string& name, |
336 const GenericAssociatedInterfaceFactory& factory); | 342 const GenericAssociatedInterfaceFactory& factory); |
337 void AddGenericAssociatedInterfaceForIOThread( | 343 void AddGenericAssociatedInterfaceForIOThread( |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
424 bool did_init_; | 430 bool did_init_; |
425 | 431 |
426 #if defined(ENABLE_IPC_FUZZER) | 432 #if defined(ENABLE_IPC_FUZZER) |
427 OutgoingMessageFilter* outgoing_message_filter_; | 433 OutgoingMessageFilter* outgoing_message_filter_; |
428 #endif | 434 #endif |
429 }; | 435 }; |
430 | 436 |
431 } // namespace IPC | 437 } // namespace IPC |
432 | 438 |
433 #endif // IPC_IPC_CHANNEL_PROXY_H_ | 439 #endif // IPC_IPC_CHANNEL_PROXY_H_ |
OLD | NEW |