| Index: content/common/service_manager/service_manager_connection_impl.cc
|
| diff --git a/content/common/service_manager/service_manager_connection_impl.cc b/content/common/service_manager/service_manager_connection_impl.cc
|
| index 971cfdd8f7323909ce82e951854a6a88bcc4b974..ac6d1f6fccbd57c79167662e0927ae1bdab0291a 100644
|
| --- a/content/common/service_manager/service_manager_connection_impl.cc
|
| +++ b/content/common/service_manager/service_manager_connection_impl.cc
|
| @@ -127,34 +127,6 @@ class ServiceManagerConnectionImpl::IOThreadContext
|
| private:
|
| friend class base::RefCountedThreadSafe<IOThreadContext>;
|
|
|
| - // A forwarding service_manager::Service implementation to account for the
|
| - // fact that IOThreadContext is a Service which owns its ServiceContext, but
|
| - // ServiceContext should own its Service.
|
| - //
|
| - // TODO(rockot): Clean this up.
|
| - class ForwardingServiceImpl : public service_manager::Service {
|
| - public:
|
| - explicit ForwardingServiceImpl(service_manager::Service* service)
|
| - : service_(service) {}
|
| - ~ForwardingServiceImpl() override {}
|
| -
|
| - // service_manager::Service:
|
| - void OnStart(service_manager::ServiceContext* context) override {
|
| - service_->OnStart(context);
|
| - }
|
| -
|
| - bool OnConnect(const service_manager::ServiceInfo& remote_info,
|
| - service_manager::InterfaceRegistry* registry) override {
|
| - return service_->OnConnect(remote_info, registry);
|
| - }
|
| -
|
| - bool OnStop() override { return service_->OnStop(); }
|
| -
|
| - private:
|
| - service_manager::Service* const service_;
|
| - DISALLOW_COPY_AND_ASSIGN(ForwardingServiceImpl);
|
| - };
|
| -
|
| class MessageLoopObserver : public base::MessageLoop::DestructionObserver {
|
| public:
|
| explicit MessageLoopObserver(base::WeakPtr<IOThreadContext> context)
|
| @@ -197,7 +169,7 @@ class ServiceManagerConnectionImpl::IOThreadContext
|
| // Should bind |io_thread_checker_| to the context's thread.
|
| DCHECK(io_thread_checker_.CalledOnValidThread());
|
| service_context_.reset(new service_manager::ServiceContext(
|
| - base::MakeUnique<ForwardingServiceImpl>(this),
|
| + base::MakeUnique<service_manager::ForwardingService>(this),
|
| std::move(pending_service_request_),
|
| std::move(io_thread_connector_),
|
| std::move(pending_connector_request_)));
|
| @@ -251,10 +223,10 @@ class ServiceManagerConnectionImpl::IOThreadContext
|
| /////////////////////////////////////////////////////////////////////////////
|
| // service_manager::Service implementation
|
|
|
| - void OnStart(service_manager::ServiceContext* context) override {
|
| + void OnStart() override {
|
| DCHECK(io_thread_checker_.CalledOnValidThread());
|
| DCHECK(!initialize_handler_.is_null());
|
| - local_info_ = context->local_info();
|
| + local_info_ = context()->local_info();
|
|
|
| InitializeCallback handler = base::ResetAndReturn(&initialize_handler_);
|
| callback_task_runner_->PostTask(FROM_HERE,
|
|
|