summaryrefslogtreecommitdiffstats
path: root/chrome/service/service_ipc_server.cc
diff options
context:
space:
mode:
authormvanouwerkerk <mvanouwerkerk@chromium.org>2015-07-17 04:27:53 -0700
committerCommit bot <commit-bot@chromium.org>2015-07-17 11:28:20 +0000
commitd9a6d38801e641eeca662e1eaf39ec2b8e10b657 (patch)
tree0ade22f78d3623be1f919821a710dad42e9a4c4b /chrome/service/service_ipc_server.cc
parent717a7ddf15f2d20f2c164f46b4d14da92f8bef56 (diff)
downloadchromium_src-d9a6d38801e641eeca662e1eaf39ec2b8e10b657.zip
chromium_src-d9a6d38801e641eeca662e1eaf39ec2b8e10b657.tar.gz
chromium_src-d9a6d38801e641eeca662e1eaf39ec2b8e10b657.tar.bz2
Clean up ServiceIPCServer and make it more testable.
* Delete unused message filter and its getter. * Delete unused channel getter. * Inject shutdown event in constructor to cut out one use of the global g_service_process, working towards making this class more easily testable in isolation. BUG=402456 Review URL: https://codereview.chromium.org/1233373002 Cr-Commit-Position: refs/heads/master@{#339239}
Diffstat (limited to 'chrome/service/service_ipc_server.cc')
-rw-r--r--chrome/service/service_ipc_server.cc15
1 files changed, 6 insertions, 9 deletions
diff --git a/chrome/service/service_ipc_server.cc b/chrome/service/service_ipc_server.cc
index 808f674..dbc0065 100644
--- a/chrome/service/service_ipc_server.cc
+++ b/chrome/service/service_ipc_server.cc
@@ -10,16 +10,17 @@
#include "chrome/service/service_process.h"
#include "ipc/ipc_logging.h"
-ServiceIPCServer::ServiceIPCServer(const IPC::ChannelHandle& channel_handle)
- : channel_handle_(channel_handle), client_connected_(false) {
+ServiceIPCServer::ServiceIPCServer(const IPC::ChannelHandle& channel_handle,
+ base::WaitableEvent* shutdown_event)
+ : channel_handle_(channel_handle),
+ shutdown_event_(shutdown_event),
+ client_connected_(false) {
}
bool ServiceIPCServer::Init() {
#ifdef IPC_MESSAGE_LOG_ENABLED
IPC::Logging::GetInstance()->SetIPCSender(this);
#endif
- sync_message_filter_ =
- new IPC::SyncMessageFilter(g_service_process->shutdown_event());
CreateChannel();
return true;
}
@@ -29,17 +30,13 @@ void ServiceIPCServer::CreateChannel() {
channel_ = IPC::SyncChannel::Create(
channel_handle_, IPC::Channel::MODE_NAMED_SERVER, this,
g_service_process->io_task_runner().get(), true,
- g_service_process->shutdown_event());
- DCHECK(sync_message_filter_.get());
- channel_->AddFilter(sync_message_filter_.get());
+ shutdown_event_);
}
ServiceIPCServer::~ServiceIPCServer() {
#ifdef IPC_MESSAGE_LOG_ENABLED
IPC::Logging::GetInstance()->SetIPCSender(NULL);
#endif
-
- channel_->RemoveFilter(sync_message_filter_.get());
}
void ServiceIPCServer::OnChannelConnected(int32 peer_pid) {