| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 class ChannelProxy : public Message::Sender { | 48 class ChannelProxy : public Message::Sender { |
| 49 public: | 49 public: |
| 50 | 50 |
| 51 struct MessageFilterTraits; | 51 struct MessageFilterTraits; |
| 52 | 52 |
| 53 // A class that receives messages on the thread where the IPC channel is | 53 // A class that receives messages on the thread where the IPC channel is |
| 54 // running. It can choose to prevent the default action for an IPC message. | 54 // running. It can choose to prevent the default action for an IPC message. |
| 55 class MessageFilter | 55 class MessageFilter |
| 56 : public base::RefCountedThreadSafe<MessageFilter, MessageFilterTraits> { | 56 : public base::RefCountedThreadSafe<MessageFilter, MessageFilterTraits> { |
| 57 public: | 57 public: |
| 58 MessageFilter(); |
| 58 virtual ~MessageFilter(); | 59 virtual ~MessageFilter(); |
| 59 | 60 |
| 60 // Called on the background thread to provide the filter with access to the | 61 // Called on the background thread to provide the filter with access to the |
| 61 // channel. Called when the IPC channel is initialized or when AddFilter | 62 // channel. Called when the IPC channel is initialized or when AddFilter |
| 62 // is called if the channel is already initialized. | 63 // is called if the channel is already initialized. |
| 63 virtual void OnFilterAdded(Channel* channel); | 64 virtual void OnFilterAdded(Channel* channel); |
| 64 | 65 |
| 65 // Called on the background thread when the filter has been removed from | 66 // Called on the background thread when the filter has been removed from |
| 66 // the ChannelProxy and when the Channel is closing. After a filter is | 67 // the ChannelProxy and when the Channel is closing. After a filter is |
| 67 // removed, it will not be called again. | 68 // removed, it will not be called again. |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 | 225 |
| 225 // By maintaining this indirection (ref-counted) to our internal state, we | 226 // By maintaining this indirection (ref-counted) to our internal state, we |
| 226 // can safely be destroyed while the background thread continues to do stuff | 227 // can safely be destroyed while the background thread continues to do stuff |
| 227 // that involves this data. | 228 // that involves this data. |
| 228 scoped_refptr<Context> context_; | 229 scoped_refptr<Context> context_; |
| 229 }; | 230 }; |
| 230 | 231 |
| 231 } // namespace IPC | 232 } // namespace IPC |
| 232 | 233 |
| 233 #endif // IPC_IPC_CHANNEL_PROXY_H__ | 234 #endif // IPC_IPC_CHANNEL_PROXY_H__ |
| OLD | NEW |