chromium/services/service_manager/public/mojom/interface_provider.mojom

// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module service_manager.mojom;

// An interface through which a client may request interfaces from a host.
// Instances of this interface are created within the context of an
// already-identified client and host pair, so there is no need to explicitly
// identify the client or host in the methods below.
interface InterfaceProvider {
  // Asks the host to provide an implementation of the interface identified by
  // |interface_name| through the message |pipe| endpoint supplied by the caller.
  // If the host is not willing or able to provide the requested interface, it
  // must close the |pipe|.
  GetInterface(string interface_name, handle<message_pipe> pipe);
};