| Index: services/log/main.cc
 | 
| diff --git a/services/log/main.cc b/services/log/main.cc
 | 
| index f87f0a38f3e3d09ad73e0c14a591f2f7d99b2fcf..2b5c92cb55dea590aecaaa2a7fbcd2c30ab723a0 100644
 | 
| --- a/services/log/main.cc
 | 
| +++ b/services/log/main.cc
 | 
| @@ -10,7 +10,6 @@
 | 
|  #include "mojo/public/c/system/main.h"
 | 
|  #include "mojo/public/cpp/application/application_connection.h"
 | 
|  #include "mojo/public/cpp/application/application_delegate.h"
 | 
| -#include "mojo/public/cpp/application/interface_factory.h"
 | 
|  #include "mojo/public/cpp/system/macros.h"
 | 
|  #include "mojo/services/log/interfaces/log.mojom.h"
 | 
|  #include "services/log/log_impl.h"
 | 
| @@ -20,7 +19,7 @@ namespace log {
 | 
|  
 | 
|  // Provides the mojo.log.Log service.  Binds a new Log implementation for each
 | 
|  // Log interface request.
 | 
| -class LogApp : public ApplicationDelegate, public InterfaceFactory<Log> {
 | 
| +class LogApp : public ApplicationDelegate {
 | 
|   public:
 | 
|    LogApp() {}
 | 
|    ~LogApp() override {}
 | 
| @@ -28,20 +27,17 @@ class LogApp : public ApplicationDelegate, public InterfaceFactory<Log> {
 | 
|   private:
 | 
|    // |ApplicationDelegate| override:
 | 
|    bool ConfigureIncomingConnection(ApplicationConnection* connection) override {
 | 
| -    connection->AddService<Log>(this);
 | 
| +    connection->GetServiceProviderImpl().AddService<Log>(
 | 
| +        [](const ConnectionContext& connection_context,
 | 
| +           InterfaceRequest<Log> log_request) {
 | 
| +          LogImpl::Create(connection_context, std::move(log_request),
 | 
| +                          [](const std::string& message) {
 | 
| +                            fprintf(stderr, "%s\n", message.c_str());
 | 
| +                          });
 | 
| +        });
 | 
|      return true;
 | 
|    }
 | 
|  
 | 
| -  // |InterfaceFactory<Log>| implementation:
 | 
| -  // We maintain a separate |LogImpl| for each incoming connection.
 | 
| -  void Create(const ConnectionContext& connection_context,
 | 
| -              InterfaceRequest<Log> request) override {
 | 
| -    LogImpl::Create(connection_context, std::move(request),
 | 
| -                    [](const std::string& message) {
 | 
| -                      fprintf(stderr, "%s\n", message.c_str());
 | 
| -                    });
 | 
| -  }
 | 
| -
 | 
|    MOJO_DISALLOW_COPY_AND_ASSIGN(LogApp);
 | 
|  };
 | 
|  
 | 
| 
 |