W3cubDocs

/OpenJDK 21

Interface ExecutionEnv

public interface ExecutionEnv
Functionality made available to a pluggable JShell execution engine. It is provided to the execution engine by the core JShell implementation.

This interface is designed to provide the access to core JShell functionality needed to implement ExecutionControl.

Since:
9
See Also:

Method Summary

Modifier and Type Method Description
void closeDown()
Reports that the execution engine has shutdown.
default Optional<JShellConsole> console()
Returns the JShellConsole that should be used by the execution engine, or null if none.
List<String> extraRemoteVMOptions()
Returns the additional VM options to be used when launching the remote JVM.
PrintStream userErr()
Returns the user's error stream.
InputStream userIn()
Returns the user's input stream.
PrintStream userOut()
Returns the user's output stream.

Method Details

userIn

InputStream userIn()
Returns the user's input stream.
Returns:
the user's input stream

userOut

PrintStream userOut()
Returns the user's output stream.
Returns:
the user's output stream

userErr

PrintStream userErr()
Returns the user's error stream.
Returns:
the user's error stream

extraRemoteVMOptions

List<String> extraRemoteVMOptions()
Returns the additional VM options to be used when launching the remote JVM. This is advice to the execution engine.

Note: an execution engine need not launch a remote JVM.

Returns:
the additional options with which to launch the remote JVM

closeDown

void closeDown()
Reports that the execution engine has shutdown.

console

default Optional<JShellConsole> console()
Returns the JShellConsole that should be used by the execution engine, or null if none.

Note: an execution engine may not support JShellConsole.

Implementation Requirements:
The default implementation of this method returns an empty Optional.
Returns:
returns console, or an empty Optional if none, never null
Since:
21

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.jshell/jdk/jshell/spi/ExecutionEnv.html