Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10024)

Unified Diff: chrome/common/ipc_channel.h

Issue 155905: Separates ipc code from common (http://crbug.com/16829) (Closed)
Patch Set: Fixes reference to 'common_message_traits' it's actually 'common_param_traits' Created 11 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/common/file_descriptor_set_unittest.cc ('k') | chrome/common/ipc_channel_handle.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/common/ipc_channel.h
diff --git a/chrome/common/ipc_channel.h b/chrome/common/ipc_channel.h
deleted file mode 100644
index 85b35fae5cbd76bc56155e21aeaa2d0bd917f89e..0000000000000000000000000000000000000000
--- a/chrome/common/ipc_channel.h
+++ /dev/null
@@ -1,118 +0,0 @@
-// Copyright (c) 2006-2008 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.
-
-#ifndef CHROME_COMMON_IPC_CHANNEL_H_
-#define CHROME_COMMON_IPC_CHANNEL_H_
-
-#include "chrome/common/ipc_message.h"
-
-namespace IPC {
-
-//------------------------------------------------------------------------------
-
-class Channel : public Message::Sender {
- // Security tests need access to the pipe handle.
- friend class ChannelTest;
-
- public:
- // Implemented by consumers of a Channel to receive messages.
- class Listener {
- public:
- virtual ~Listener() {}
-
- // Called when a message is received.
- virtual void OnMessageReceived(const Message& message) = 0;
-
- // Called when the channel is connected and we have received the internal
- // Hello message from the peer.
- virtual void OnChannelConnected(int32 peer_pid) {}
-
- // Called when an error is detected that causes the channel to close.
- // This method is not called when a channel is closed normally.
- virtual void OnChannelError() {}
- };
-
- enum Mode {
- MODE_SERVER,
- MODE_CLIENT
- };
-
- enum {
- // The maximum message size in bytes. Attempting to receive a
- // message of this size or bigger results in a channel error.
- kMaximumMessageSize = 256 * 1024 * 1024,
-
- // Ammount of data to read at once from the pipe.
- kReadBufferSize = 4 * 1024
- };
-
- // Initialize a Channel.
- //
- // |channel_id| identifies the communication Channel.
- // |mode| specifies whether this Channel is to operate in server mode or
- // client mode. In server mode, the Channel is responsible for setting up the
- // IPC object, whereas in client mode, the Channel merely connects to the
- // already established IPC object.
- // |listener| receives a callback on the current thread for each newly
- // received message.
- //
- Channel(const std::string& channel_id, Mode mode, Listener* listener);
-
- ~Channel();
-
- // Connect the pipe. On the server side, this will initiate
- // waiting for connections. On the client, it attempts to
- // connect to a pre-existing pipe. Note, calling Connect()
- // will not block the calling thread and may complete
- // asynchronously.
- bool Connect();
-
- // Close this Channel explicitly. May be called multiple times.
- void Close();
-
- // Modify the Channel's listener.
- void set_listener(Listener* listener);
-
- // Send a message over the Channel to the listener on the other end.
- //
- // |message| must be allocated using operator new. This object will be
- // deleted once the contents of the Message have been sent.
- //
- // FIXME bug 551500: the channel does not notice failures, so if the
- // renderer crashes, it will silently succeed, leaking the parameter.
- // At least the leak will be fixed by...
- //
- virtual bool Send(Message* message);
-
-#if defined(OS_POSIX)
- // On POSIX an IPC::Channel wraps a socketpair(), this method returns the
- // FD # for the client end of the socket.
- // This method may only be called on the server side of a channel.
- //
- // If the kTestingChannelID flag is specified on the command line then
- // a named FIFO is used as the channel transport mechanism rather than a
- // socketpair() in which case this method returns -1.
- int GetClientFileDescriptor() const;
-#endif // defined(OS_POSIX)
-
- private:
- // PIMPL to which all channel calls are delegated.
- class ChannelImpl;
- ChannelImpl *channel_impl_;
-
- // The Hello message is internal to the Channel class. It is sent
- // by the peer when the channel is connected. The message contains
- // just the process id (pid). The message has a special routing_id
- // (MSG_ROUTING_NONE) and type (HELLO_MESSAGE_TYPE).
- enum {
- HELLO_MESSAGE_TYPE = kuint16max // Maximum value of message type (uint16),
- // to avoid conflicting with normal
- // message types, which are enumeration
- // constants starting from 0.
- };
-};
-
-} // namespace IPC
-
-#endif // CHROME_COMMON_IPC_CHANNEL_H_
« no previous file with comments | « chrome/common/file_descriptor_set_unittest.cc ('k') | chrome/common/ipc_channel_handle.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698