jp.go.nict.langrid.wrapper.common.process
クラス ProcessFacade

java.lang.Object
  上位を拡張 jp.go.nict.langrid.wrapper.common.process.ProcessFacade

public class ProcessFacade
extends Object

ProcessBuilderのファサード。

バージョン:
$Revision: 6758 $
作成者:
Takao Nakaguchi, $Author: nakaguchi $

コンストラクタの概要
ProcessFacade()
          コンストラクタ。
ProcessFacade(File directory, String... args)
          コンストラクタ。
ProcessFacade(String... args)
          コンストラクタ。
 
メソッドの概要
 ProcessBuilder builder()
          プロセスビルダを返す。
 void close()
          リソースを解放しプロセスを終了させる(終了を待機する)。
 void close(int timeoutMillis)
          リソースを解放しプロセスを終了させる(終了を待機する)。
 void closeStreams()
          出力ストリーム、入力ストリームの順でcloseメソッドを呼び出す。
 int exitValue()
           
 InputStream getErrorStream()
          入力ストリームを取得する。
 InputStream getInputStream()
          入力ストリームを取得する。
 OutputStream getOutputStream()
          出力ストリームを取得する。
 void start()
          プロセスを開始する。
 void waitFor()
          起動したプロセスの終了を待機する。
 void waitFor(int timeoutMillis)
          起動したプロセスの終了を待機する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ProcessFacade

public ProcessFacade(File directory,
                     String... args)
コンストラクタ。

パラメータ:
args - 実行するコマンド文字列

ProcessFacade

public ProcessFacade(String... args)
コンストラクタ。

パラメータ:
args - 実行するコマンド文字列

ProcessFacade

public ProcessFacade()
コンストラクタ。

メソッドの詳細

builder

public ProcessBuilder builder()
プロセスビルダを返す。

戻り値:
プロセスビルダ

start

public void start()
           throws IOException
プロセスを開始する。

例外:
IOException - プロセスの開始に失敗した

getInputStream

public InputStream getInputStream()
                           throws IllegalStateException
入力ストリームを取得する。 プロセスが開始されていない場合、IllegalStateException(非チェック例外)が発生する。

戻り値:
入力ストリーム
例外:
IllegalStateException - プロセスが開始されていない

getErrorStream

public InputStream getErrorStream()
                           throws IllegalStateException
入力ストリームを取得する。 プロセスが開始されていない場合、IllegalStateException(非チェック例外)が発生する。

戻り値:
入力ストリーム
例外:
IllegalStateException - プロセスが開始されていない

getOutputStream

public OutputStream getOutputStream()
出力ストリームを取得する。 プロセスが開始されていない場合、IllegalStateException(非チェック例外)が発生する。

戻り値:
出力ストリーム
例外:
IllegalStateException - プロセスが開始されていない

closeStreams

public void closeStreams()
                  throws IOException
出力ストリーム、入力ストリームの順でcloseメソッドを呼び出す。 出力ストリームのcloseでIOExceptionが生じても、入力ストリームのcloseを呼び出す。

例外:
IOException - ストリームのclose呼び出しに失敗した

waitFor

public void waitFor()
             throws InterruptedException
起動したプロセスの終了を待機する。 プロセスが開始されていない場合は何もしない。

例外:
InterruptedException - 待機操作が中断された

exitValue

public int exitValue()

waitFor

public void waitFor(int timeoutMillis)
             throws InterruptedException,
                    TimeoutException
起動したプロセスの終了を待機する。 プロセスが開始されていない場合は何もしない。

パラメータ:
timeoutMillis - 待機するミリ秒数
例外:
InterruptedException - 待機操作が中断された
TimeoutException - 待機時間を経過してもプロセスが終了しなかった

close

public void close()
           throws InterruptedException,
                  IOException
リソースを解放しプロセスを終了させる(終了を待機する)。 プロセスが開始されていない場合は何もしない。

例外:
InterruptedException - 待機操作が中断された
IOException - ストリームのクローズに失敗した

close

public void close(int timeoutMillis)
           throws InterruptedException,
                  IOException,
                  TimeoutException
リソースを解放しプロセスを終了させる(終了を待機する)。 プロセスが開始されていない場合は何もしない。

パラメータ:
timeoutMillis - 待機するミリ秒数
例外:
InterruptedException - 待機操作が中断された
IOException - ストリームのクローズに失敗した
TimeoutException - 待機時間を経過してもプロセスが終了しなかった