// 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(); };