diff options
Diffstat (limited to 'mojo/edk/system/proxy_message_pipe_endpoint.cc')
-rw-r--r-- | mojo/edk/system/proxy_message_pipe_endpoint.cc | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/mojo/edk/system/proxy_message_pipe_endpoint.cc b/mojo/edk/system/proxy_message_pipe_endpoint.cc deleted file mode 100644 index 5f0f2e9..0000000 --- a/mojo/edk/system/proxy_message_pipe_endpoint.cc +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "mojo/edk/system/proxy_message_pipe_endpoint.h" - -#include <string.h> - -#include "base/logging.h" -#include "mojo/edk/system/channel_endpoint.h" -#include "mojo/edk/system/local_message_pipe_endpoint.h" -#include "mojo/edk/system/message_pipe_dispatcher.h" - -namespace mojo { -namespace system { - -ProxyMessagePipeEndpoint::ProxyMessagePipeEndpoint( - ChannelEndpoint* channel_endpoint) - : channel_endpoint_(channel_endpoint) { -} - -ProxyMessagePipeEndpoint::~ProxyMessagePipeEndpoint() { - DCHECK(!channel_endpoint_); -} - -scoped_refptr<ChannelEndpoint> -ProxyMessagePipeEndpoint::ReleaseChannelEndpoint() { - DCHECK(channel_endpoint_); - scoped_refptr<ChannelEndpoint> rv; - rv.swap(channel_endpoint_); - return rv; -} - -MessagePipeEndpoint::Type ProxyMessagePipeEndpoint::GetType() const { - return kTypeProxy; -} - -bool ProxyMessagePipeEndpoint::OnPeerClose() { - DetachIfNecessary(); - return false; -} - -// Note: We may have to enqueue messages even when our (local) peer isn't open -// -- it may have been written to and closed immediately, before we were ready. -// This case is handled in |Run()| (which will call us). -void ProxyMessagePipeEndpoint::EnqueueMessage( - scoped_ptr<MessageInTransit> message) { - DCHECK(channel_endpoint_); - LOG_IF(WARNING, !channel_endpoint_->EnqueueMessage(message.Pass())) - << "Failed to write enqueue message to channel"; -} - -void ProxyMessagePipeEndpoint::Close() { - DetachIfNecessary(); -} - -void ProxyMessagePipeEndpoint::DetachIfNecessary() { - if (channel_endpoint_) { - channel_endpoint_->DetachFromClient(); - channel_endpoint_ = nullptr; - } -} - -} // namespace system -} // namespace mojo |