Module jdk.jshell

Class Util

java.lang.Object
jdk.jshell.execution.Util

public class Util extends Object
用于设置实现ExecutionControl的杂项实用方法。特别是具有远程执行的实现。
自 JDK 版本:
9
  • Method Details

    • forwardExecutionControl

      public static void forwardExecutionControl(ExecutionControl ec, ObjectInput in, ObjectOutput out)
      将输入的命令转发到指定的ExecutionControl实例,然后将响应返回到输出。
      参数:
      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实例,然后将响应返回到输出。
      参数:
      ec - 处理命令的ExecutionControl直接实例
      inStream - 用于创建命令输入的流
      outStream - 将携带任何指定的辅助通道(如System.outSystem.err)和命令响应输出的流
      outputStreamMap - 在要携带的附加流名称和流的设置器之间建立映射。以'$'开头的名称保留供内部使用。
      inputStreamMap - 在要携带的附加流名称和流的设置器之间建立映射。以'$'开头的名称保留供内部使用。
      抛出:
      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。
      参数:
      input - 分组的输入流
      output - 分组的输出流
      outputStreamMap - 在流名称和要转发的输出流之间建立映射。以'$'开头的名称保留供内部使用。
      inputStreamMap - 在流名称和要转发的输入流之间建立映射。以'$'开头的名称保留供内部使用。
      factory - 从ObjectInput和ObjectOutput创建ExecutionControl的工厂
      返回:
      创建的ExecutionControl
      抛出:
      IOException - 如果设置流时引发异常
    • detectJdiExitEvent

      public static void detectJdiExitEvent(VirtualMachine vm, Consumer<String> unbiddenExitHandler)
      监视 JDI 事件流以获取VMDeathEventVMDisconnectEvent。如果遇到这些事件,则调用unbiddenExitHandler
      参数:
      vm - 要检查的虚拟机
      unbiddenExitHandler - 将接受退出信息的处理程序