Index: ipc/ipc_channel_common.cc |
diff --git a/ipc/ipc_channel_common.cc b/ipc/ipc_channel_common.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..44ca1c46a25c9a19abe28be9f2d5e5ae4e485922 |
--- /dev/null |
+++ b/ipc/ipc_channel_common.cc |
@@ -0,0 +1,55 @@ |
+// Copyright (c) 2014 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 "ipc/ipc_channel.h" |
+ |
+namespace IPC { |
+ |
+// static |
+scoped_ptr<Channel> Channel::CreateByModeForProxy( |
+ const IPC::ChannelHandle &channel_handle, Mode mode, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, mode, listener)); |
+} |
+ |
+// static |
+scoped_ptr<Channel> Channel::CreateClient( |
+ const IPC::ChannelHandle &channel_handle, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, Channel::MODE_CLIENT, listener)); |
+} |
+ |
+// static |
+scoped_ptr<Channel> Channel::CreateNamedServer( |
+ const IPC::ChannelHandle &channel_handle, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, Channel::MODE_NAMED_SERVER, listener)); |
+} |
+ |
+// static |
+scoped_ptr<Channel> Channel::CreateNamedClient( |
+ const IPC::ChannelHandle &channel_handle, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, Channel::MODE_NAMED_CLIENT, listener)); |
+} |
+ |
+#if defined(OS_POSIX) |
+// static |
+scoped_ptr<Channel> Channel::CreateOpenNamedServer( |
+ const IPC::ChannelHandle &channel_handle, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, Channel::MODE_OPEN_NAMED_SERVER, listener)); |
+} |
+#endif |
+ |
+// static |
+scoped_ptr<Channel> Channel::CreateServer( |
+ const IPC::ChannelHandle &channel_handle, Listener* listener) { |
+ return make_scoped_ptr( |
+ new Channel(channel_handle, Channel::MODE_SERVER, listener)); |
+} |
+ |
+ |
+} // namespace IPC |
+ |