| Index: services/service_manager/public/cpp/lib/callback_binder.h
|
| diff --git a/services/service_manager/public/cpp/lib/callback_binder.h b/services/service_manager/public/cpp/lib/callback_binder.h
|
| index debbb40e3d8e0e755abbfa10c90c089b0f04e17d..3045c547c106ced120d9247d00872f6ed343c8b3 100644
|
| --- a/services/service_manager/public/cpp/lib/callback_binder.h
|
| +++ b/services/service_manager/public/cpp/lib/callback_binder.h
|
| @@ -15,50 +15,11 @@ namespace service_manager {
|
| namespace internal {
|
|
|
| template <typename Interface>
|
| -class CallbackBinderWithSourceInfo : public InterfaceBinder {
|
| +class CallbackBinder : public InterfaceBinder {
|
| public:
|
| using BindCallback = base::Callback<void(const BindSourceInfo&,
|
| mojo::InterfaceRequest<Interface>)>;
|
|
|
| - CallbackBinderWithSourceInfo(
|
| - const BindCallback& callback,
|
| - const scoped_refptr<base::SingleThreadTaskRunner>& task_runner)
|
| - : callback_(callback), task_runner_(task_runner) {}
|
| - ~CallbackBinderWithSourceInfo() override {}
|
| -
|
| - private:
|
| - // InterfaceBinder:
|
| - void BindInterface(const BindSourceInfo& source_info,
|
| - const std::string& interface_name,
|
| - mojo::ScopedMessagePipeHandle handle) override {
|
| - mojo::InterfaceRequest<Interface> request =
|
| - mojo::MakeRequest<Interface>(std::move(handle));
|
| - if (task_runner_) {
|
| - task_runner_->PostTask(
|
| - FROM_HERE,
|
| - base::Bind(&CallbackBinderWithSourceInfo::RunCallback, callback_,
|
| - source_info, base::Passed(&request)));
|
| - } else {
|
| - RunCallback(callback_, source_info, std::move(request));
|
| - }
|
| - }
|
| -
|
| - static void RunCallback(const BindCallback& callback,
|
| - const BindSourceInfo& source_info,
|
| - mojo::InterfaceRequest<Interface> request) {
|
| - callback.Run(source_info, std::move(request));
|
| - }
|
| -
|
| - const BindCallback callback_;
|
| - scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
|
| - DISALLOW_COPY_AND_ASSIGN(CallbackBinderWithSourceInfo);
|
| -};
|
| -
|
| -template <typename Interface>
|
| -class CallbackBinder : public InterfaceBinder {
|
| - public:
|
| - using BindCallback = base::Callback<void(mojo::InterfaceRequest<Interface>)>;
|
| -
|
| CallbackBinder(const BindCallback& callback,
|
| const scoped_refptr<base::SingleThreadTaskRunner>& task_runner)
|
| : callback_(callback), task_runner_(task_runner) {}
|
| @@ -74,15 +35,16 @@ class CallbackBinder : public InterfaceBinder {
|
| if (task_runner_) {
|
| task_runner_->PostTask(FROM_HERE,
|
| base::Bind(&CallbackBinder::RunCallback, callback_,
|
| - base::Passed(&request)));
|
| + source_info, base::Passed(&request)));
|
| } else {
|
| - RunCallback(callback_, std::move(request));
|
| + RunCallback(callback_, source_info, std::move(request));
|
| }
|
| }
|
|
|
| static void RunCallback(const BindCallback& callback,
|
| + const BindSourceInfo& source_info,
|
| mojo::InterfaceRequest<Interface> request) {
|
| - callback.Run(std::move(request));
|
| + callback.Run(source_info, std::move(request));
|
| }
|
|
|
| const BindCallback callback_;
|
|
|