naiveproxy/services/service_manager/tests/lifecycle/lifecycle_unittest.mojom

33 lines
1.0 KiB
Plaintext
Raw Normal View History

2018-01-28 19:30:36 +03:00
// 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 service_manager.test.mojom;
// An interface implemented by a service exposing different ways for the
// service to "shut down" from the caller and service manager's perspective.
interface LifecycleControl {
// Method for ping-pong acknowledgement.
Ping() => ();
// Perform any normal cleanup and shut down normally.
GracefulQuit();
// Crash immediately and leave the service manager and clients to deal with
// the consequences.
Crash();
// Not actually a shutdown from the client's perspective, but the Service
// Manager is no longer tracking this service.
CloseServiceManagerConnection();
};
// Implemented by a service that connects to another service, thereby creating
// an instance for it in the service manager.
interface Parent {
// Connects to another service and runs the callback when that service has
// acked a Ping.
ConnectToChild() => ();
Quit();
};