| Index: services/shell/public/cpp/service_context.h
|
| diff --git a/services/shell/public/cpp/service_context.h b/services/shell/public/cpp/service_context.h
|
| deleted file mode 100644
|
| index 4c22f529c26a61658c15ef7d861437a4b57a2b48..0000000000000000000000000000000000000000
|
| --- a/services/shell/public/cpp/service_context.h
|
| +++ /dev/null
|
| @@ -1,101 +0,0 @@
|
| -// Copyright 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.
|
| -
|
| -#ifndef SERVICES_SHELL_PUBLIC_CPP_SERVICE_CONTEXT_H_
|
| -#define SERVICES_SHELL_PUBLIC_CPP_SERVICE_CONTEXT_H_
|
| -
|
| -#include <memory>
|
| -#include <utility>
|
| -#include <vector>
|
| -
|
| -#include "base/callback.h"
|
| -#include "base/macros.h"
|
| -#include "mojo/public/cpp/bindings/binding.h"
|
| -#include "mojo/public/cpp/system/core.h"
|
| -#include "services/shell/public/cpp/connector.h"
|
| -#include "services/shell/public/cpp/service.h"
|
| -#include "services/shell/public/interfaces/connector.mojom.h"
|
| -#include "services/shell/public/interfaces/service.mojom.h"
|
| -
|
| -namespace shell {
|
| -
|
| -// Encapsulates a connection to the Service Manager in two parts:
|
| -// - a bound InterfacePtr to mojom::Connector, the primary mechanism
|
| -// by which the instantiating service connects to other services,
|
| -// brokered by the Service Manager.
|
| -// - a bound InterfaceRequest of mojom::Service, an interface used by the
|
| -// Service Manager to inform this service of lifecycle events and
|
| -// inbound connections brokered by it.
|
| -//
|
| -// This class should be used in two scenarios:
|
| -// - During early startup to bind the mojom::ServiceRequest obtained from
|
| -// the Service Manager, typically in response to either ServiceMain() or
|
| -// main().
|
| -// - In an implementation of mojom::ServiceFactory to bind the
|
| -// mojom::ServiceRequest passed via CreateService. In this scenario there can
|
| -// be many instances of this class per process.
|
| -//
|
| -// Instances of this class are constructed with an implementation of the Service
|
| -// Manager Client Lib's Service interface. See documentation in service.h
|
| -// for details.
|
| -//
|
| -class ServiceContext : public mojom::Service {
|
| - public:
|
| - // Creates a new ServiceContext bound to |request|. This connection may be
|
| - // used immediately to make outgoing connections via connector(). Does not
|
| - // take ownership of |service|, which must remain valid for the lifetime of
|
| - // ServiceContext. If either |connector| or |connector_request| is non-null
|
| - // both must be non-null. If both are null, the connection will create its own
|
| - // Connector and request to pass to the Service Manager on initialization.
|
| - ServiceContext(shell::Service* service,
|
| - mojom::ServiceRequest request,
|
| - std::unique_ptr<Connector> connector = nullptr,
|
| - mojom::ConnectorRequest connector_request = nullptr);
|
| -
|
| - ~ServiceContext() override;
|
| -
|
| - Connector* connector() { return connector_.get(); }
|
| - const Identity& identity() { return identity_; }
|
| -
|
| - // Specify a function to be called when the connection to the shell is lost.
|
| - // Note that if connection has already been lost, then |closure| is called
|
| - // immediately.
|
| - void SetConnectionLostClosure(const base::Closure& closure);
|
| -
|
| - private:
|
| - // mojom::Service:
|
| - void OnStart(const Identity& identity,
|
| - const OnStartCallback& callback) override;
|
| - void OnConnect(const Identity& source,
|
| - mojom::InterfaceProviderRequest interfaces,
|
| - const Interfaces& allowed_interfaces,
|
| - const Classes& allowed_classes) override;
|
| -
|
| - void OnConnectionError();
|
| -
|
| - // A callback called when OnStart() is run.
|
| - base::Closure initialize_handler_;
|
| -
|
| - // We track the lifetime of incoming connection registries as it more
|
| - // convenient for the client.
|
| - std::vector<std::unique_ptr<InterfaceRegistry>> incoming_connections_;
|
| -
|
| - // A pending Connector request which will eventually be passed to the Service
|
| - // Manager.
|
| - mojom::ConnectorRequest pending_connector_request_;
|
| -
|
| - shell::Service* service_;
|
| - mojo::Binding<mojom::Service> binding_;
|
| - std::unique_ptr<Connector> connector_;
|
| - shell::Identity identity_;
|
| - bool should_run_connection_lost_closure_ = false;
|
| -
|
| - base::Closure connection_lost_closure_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(ServiceContext);
|
| -};
|
| -
|
| -} // namespace shell
|
| -
|
| -#endif // SERVICES_SHELL_PUBLIC_CPP_SERVICE_CONTEXT_H_
|
|
|