java.lang.Object
jdk.jshell.execution.Util
public class Util extends Object
ExecutionControl
の実装をセット・アップするためのその他のユーティリティ・メソッド。 特にリモート実行による実装。 - 導入されたバージョン:
- 9
-
メソッドのサマリー
修飾子と型メソッド説明static void
detectJdiExitEvent
(VirtualMachine vm, Consumer<String> unbiddenExitHandler) VMDeathEvent
とVMDisconnectEvent
のJDIイベント・ストリームを監視します。static void
forwardExecutionControl
(ExecutionControl ec, ObjectInput in, ObjectOutput out) 入力から指定されたExecutionControl
インスタンスへコマンドを転送し、出力にレスポンスします。static void
forwardExecutionControlAndIO
(ExecutionControl ec, InputStream inStream, OutputStream outStream, Map<String, Consumer<OutputStream>> outputStreamMap, Map<String, Consumer<InputStream>> inputStreamMap) 入力から指定されたExecutionControl
インスタンスへコマンドを転送し、出力にレスポンスします。static ExecutionControl
remoteInputOutput
(InputStream input, OutputStream output, Map<String, OutputStream> outputStreamMap, Map<String, InputStream> inputStreamMap, BiFunction<ObjectInput, ObjectOutput, ExecutionControl> factory) パケット化された入力と出力に対してExecutionControlを作成します。
-
メソッドの詳細
-
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, throws IOExceptionConsumer<InputStream>> inputStreamMap) 入力から指定されたExecutionControl
インスタンスへコマンドを転送し、出力にレスポンスします。- パラメータ:
ec
- コマンドを処理するExecutionControl
の直接インスタンスinStream
- コマンド入力を作成するストリームoutStream
- 指定された任意の補助チャネル(System.out
とSystem.err
のように)とコマンド・レスポンス出力を運ぶストリーム。outputStreamMap
- 追加のストリームの名前とストリームのセッターとの間のマップ。 '$'で始まる名前は、内部使用のために予約されています。inputStreamMap
- 追加のストリームの名前とストリームのセッターとの間のマップ。 '$'で始まる名前は、内部使用のために予約されています。- 例外:
IOException
- 渡されたストリームを使用してエラーが発生した場合
-
remoteInputOutput
public static ExecutionControl remoteInputOutput(InputStream input, OutputStream output, Map<String, OutputStream> outputStreamMap, Map<String, throws IOExceptionInputStream> inputStreamMap, BiFunction<ObjectInput, ObjectOutput, ExecutionControl> factory) パケット化された入力と出力に対してExecutionControlを作成します。 指定されたInputStreamはパケット化解除され、コンテンツはObjectInputおよび指定されたOutputStreamに転送されます。 ObjectOutputと指定されたInputStreamから読み込まれた値はパケット化され、指定されたOutputStreamに送られます。- パラメータ:
input
- パケット化された入力ストリームoutput
- パケット化された出力ストリームoutputStreamMap
- ストリーム名と転送する出力ストリームとの間のマップ。 '$'で始まる名前は、内部使用のために予約されています。inputStreamMap
- ストリーム名と転送する入力ストリームとの間のマップ。 '$'で始まる名前は、内部使用のために予約されています。factory
- ObjectInputおよびObjectOutputからExecutionControlを作成します。- 戻り値:
- 作成されたExecutionControl
- 例外:
IOException
- ストリームの設定で例外が発生した場合
-
detectJdiExitEvent
public static void detectJdiExitEvent(VirtualMachine vm, Consumer<String> unbiddenExitHandler) VMDeathEvent
とVMDisconnectEvent
のJDIイベント・ストリームを監視します。 発生した場合は、unbiddenExitHandler
を呼び出します。- パラメータ:
vm
- チェックする仮想マシンunbiddenExitHandler
- 終了情報を受け入れるハンドラ
-