blob: 2197e3bcab3f61c0bb68815a05e026fd1758eddf (
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
25
26
27
28
29
30
31
32
|
// Copyright 2016 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.shell.test.mojom;
// An interface implemented by an application exposing different ways for the
// application to "shut down" from the caller and shell's perspective.
interface LifecycleControl {
// Method for ping-pong acknowledgement.
Ping() => ();
// Perform any normal cleanup and shut down normally.
GracefulQuit();
// Crash immediately and leave the shell and clients to deal with the
// consequences.
Crash();
// Not actually a shutdown from the client's perspective, but the Shell is no
// longer tracking this application.
CloseShellConnection();
};
// Implemented by an app that connects to another app, thereby creating an
// instance for it in the shell.
interface Parent {
// Connects to another app and runs the callback when that app has acked a
// Ping.
ConnectToChild() => ();
Quit();
};
|