// 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. library fuchsia.sys; // An interface for controlling an environment. // // Closing this interface implicitly kills the controlled environment unless // the |Detach| method has been called. // // If the environment is destroyed, this interface will be closed. // // Typically obtained via |Environment.CreateNestedEnvironment|. interface EnvironmentController { // Terminates the environment. // // When an |Environment| is terminated, all applications launched // in the environment (and in all transitively nested environments) are also // killed. 1: Kill() -> (); // Decouples the lifetime of the environment from this controller. // // After calling |Detach|, the environment will not be implicitly killed when // this interface is closed. 2: Detach(); // Event that is triggered when the environment is created. 3: -> OnCreated(); };