summaryrefslogtreecommitdiffstats
path: root/mojo/system/local_message_pipe_endpoint.h
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/system/local_message_pipe_endpoint.h')
-rw-r--r--mojo/system/local_message_pipe_endpoint.h37
1 files changed, 4 insertions, 33 deletions
diff --git a/mojo/system/local_message_pipe_endpoint.h b/mojo/system/local_message_pipe_endpoint.h
index 98a665e..45dbe2a 100644
--- a/mojo/system/local_message_pipe_endpoint.h
+++ b/mojo/system/local_message_pipe_endpoint.h
@@ -45,45 +45,16 @@ class MOJO_SYSTEM_IMPL_EXPORT LocalMessagePipeEndpoint
virtual void RemoveWaiter(Waiter* waiter) OVERRIDE;
private:
- class MessageQueueEntry {
- public:
- MessageQueueEntry();
- // Provide an explicit copy constructor, so that we can use this directly in
- // a (C++03) STL container. However, we only allow the case where |other| is
- // empty. (We don't provide a nontrivial constructor, because it wouldn't be
- // useful with these constraints. This will change with C++11.)
- MessageQueueEntry(const MessageQueueEntry& other);
- ~MessageQueueEntry();
-
- // Initialize, creating equivalent "duplicate" dispatchers. |transports|
- // should be non-null only if nonempty.
- // TODO(vtl): This would simply be a constructor, but we don't have C++11's
- // emplace operations yet, and I don't want to copy |dispatchers_|.
- void Init(scoped_ptr<MessageInTransit> message,
- std::vector<DispatcherTransport>* transports);
-
- MessageInTransit* message() {
- return message_;
- }
- std::vector<scoped_refptr<Dispatcher> >* dispatchers() {
- return &dispatchers_;
- }
-
- private:
- MessageInTransit* message_;
- std::vector<scoped_refptr<Dispatcher> > dispatchers_;
-
- // We don't need assignment, however.
- DISALLOW_ASSIGN(MessageQueueEntry);
- };
-
MojoWaitFlags SatisfiedFlags();
MojoWaitFlags SatisfiableFlags();
bool is_open_;
bool is_peer_open_;
- std::deque<MessageQueueEntry> message_queue_;
+ // Queue of incoming messages; owns its entries.
+ // TODO(vtl): When C++11 is available, switch this to a deque of
+ // |scoped_ptr|s.
+ std::deque<MessageInTransit*> message_queue_;
WaiterList waiter_list_;
DISALLOW_COPY_AND_ASSIGN(LocalMessagePipeEndpoint);