Класс Util
- java.lang.Object
-
- jdk.jshell.execution.Util
public class Util extends Object
Разнообразные служебные методы для настройки реализаций ExecutionControl. В особенности реализации с удалённым выполнением.
- Since:
- 9
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
static void |
detectJdiExitEvent(VirtualMachine vm,
Consumer<String> unbiddenExitHandler) |
Отслеживать поток событий JDI для |
static void |
forwardExecutionControl(ExecutionControl ec,
ObjectInput in,
ObjectOutput out) |
Пересылать команды из входного потока указанному экземпляру |
static void |
forwardExecutionControlAndIO(ExecutionControl ec,
InputStream inStream,
OutputStream outStream,
Map<String,Consumer<OutputStream>> outputStreamMap,
Map<String,Consumer<InputStream>> inputStreamMap) |
Пересылать команды из входного потока указанному экземпляру |
static ExecutionControl |
remoteInputOutput(InputStream input,
OutputStream output,
Map<String,OutputStream> outputStreamMap,
Map<String,InputStream> inputStreamMap,
BiFunction<ObjectInput,ObjectOutput,ExecutionControl> factory) |
Создаёт ExecutionControl для заданных пакетированных входного и выходного потоков. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы
forwardExecutionControl
public static void forwardExecutionControl(ExecutionControl ec,
ObjectInput in,
ObjectOutput out)
Пересылать команды из входного потока указанному экземпляру ExecutionControl, а затем возвращать ответы по выходному потоку.
- Parameters:
-
ec- прямой экземплярExecutionControlдля обработки команд -
in- входной поток команд -
out- выходной поток ответа на команды
forwardExecutionControlAndIO
public static void forwardExecutionControlAndIO(ExecutionControl ec,
InputStream inStream,
OutputStream outStream,
Map<String,Consumer<OutputStream>> outputStreamMap,
Map<String,Consumer<InputStream>> inputStreamMap)
throws IOException
Пересылать команды из входного потока указанному экземпляру ExecutionControl, а затем возвращать ответы по выходному потоку.
- Parameters:
-
ec- прямой экземплярExecutionControlдля обработки команд -
inStream- поток для создания входных команд -
outStream- поток, который будет передавать любые дополнительные каналы (например,System.outиSystem.err), и выходной поток ответа команд. -
outputStreamMap- карта соответствий имён дополнительных потоков и установщиков потока. Имена, начинающиеся с '$', зарезервированы для внутреннего использования. -
inputStreamMap- карта соответствий имён дополнительных потоков и установщиков потока. Имена, начинающиеся с '$', зарезервированы для внутреннего использования. - Throws:
-
IOException- если при использовании переданных потоков произошли ошибки
remoteInputOutput
public static ExecutionControl remoteInputOutput(InputStream input,
OutputStream output,
Map<String,OutputStream> outputStreamMap,
Map<String,InputStream> inputStreamMap,
BiFunction<ObjectInput,ObjectOutput,ExecutionControl> factory)
throws IOException
Создаёт ExecutionControl для заданных пакетированных входного и выходного потоков. Заданный InputStream распаковывается, и содержимое передаётся в ObjectInput, а заданные OutputStreams. ObjectOutput и значения, считанные из заданного InputStream, пакетируются и отправляются в заданный OutputStream.
- Parameters:
-
input- пакетированный входной поток -
output- пакетированный выходной поток -
outputStreamMap- карта соответствий имён потоков и выходных потоков для пересылки. Имена, начинающиеся с '$', зарезервированы для внутреннего использования. -
inputStreamMap- карта соответствий имён потоков и входных потоков для пересылки. Имена, начинающиеся с '$', зарезервированы для внутреннего использования. -
factory- для создания ExecutionControl из ObjectInput и ObjectOutput. - Returns:
- созданный ExecutionControl
- Throws:
-
IOException- если при настройке потоков произошла ошибка
detectJdiExitEvent
public static void detectJdiExitEvent(VirtualMachine vm,
Consumer<String> unbiddenExitHandler)
Отслеживать поток событий JDI для VMDeathEvent и VMDisconnectEvent. В случае обнаружения, вызывает unbiddenExitHandler.
- Parameters:
-
vm- виртуальная машина для проверки -
unbiddenExitHandler- обработчик, который примет информацию о выходе
© 1993, 2020, 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/11/docs/api/jdk.jshell/jdk/jshell/execution/Util.html