summaryrefslogtreecommitdiffstats
path: root/mojo/public/interfaces/application/application.mojom
blob: d389ae2dd15ab45c1f7a6289f19fdca46af2d234 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// 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.

module mojo;

import "mojo/public/interfaces/application/service_provider.mojom";

// Applications vend Services through the ServiceProvider interface. Services
// implement Interfaces.
interface Application {
  // Initialize is guaranteed to be called before any AcceptConnection calls.
  Initialize(array<string>? args);

  // Called in response to a call to mojo.Shell.ConnectToApplication().
  // The |services| and |exposed_services| parameters are the same as those on
  // mojo.Shell.ConnectToApplication().
  // |services| will be used to look up services provided by this application.
  // |exposed_services| can be used to look up services exposed by the
  // application at |requestor_url|.
  AcceptConnection(string requestor_url,
                   ServiceProvider&? services,
                   ServiceProvider? exposed_services);
};