openGionopenGion
5.4.3.3

org.opengion.fukurou.util
クラス Shell

java.lang.Object
  上位を拡張 org.opengion.fukurou.util.Shell

public class Shell
extends java.lang.Object

Shell は、Runtime.exec の簡易的に実行するクラスです。 複雑な処理は通常の Runtime.exec を使用する必要がありますが,ほとんどの プロセス実行については、このクラスで十分であると考えています。 このクラスでは、OS(特にWindows)でのバッチファイルの実行において、 OS自動認識を行い、簡易的なコマンドをセットするだけで実行できるように しています。

バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

入れ子のクラスの概要
(package private) static class Shell.ProcessReader
          stdout と stderr の取得をスレッド化する為のインナークラスです。
(package private) static class Shell.WaitJoin
          スレッドのウェイト処理クラス 指定のタイムアウト時間が来ると、設定されたプロセスを、強制終了(destroy)します。
 
フィールドの概要
static int CANCEL
          Shell オブジェクトの状態を表します。
static int ERROR
          Shell オブジェクトの状態を表します。
static int OK
          Shell オブジェクトの状態を表します。
static int RUNNING
          Shell オブジェクトの状態を表します。
 
コンストラクタの概要
Shell()
           
 
メソッドの概要
 void destroy()
          サブプロセスを終了します。
 int exec()
          プロセスの実行処理
 int exitValue()
          サブプロセスの終了コードを返します。
 java.lang.String getCommand()
          プロセスが実際に実行するコマンドを取得します。
 java.lang.String getStderrData()
          プロセスの実行時のエラー出力を取得します。
 java.lang.String getStdoutData()
          プロセスの実行時の標準出力を取得します。
 boolean isEnd()
          プロセスが終了しているかどうかを確認します。
 void setCommand(java.lang.String cmd)
          プロセスを実行する時に引き渡すコマンド
 void setCommand(java.lang.String cmd, boolean batch)
          プロセスを実行する時に引き渡すコマンド 第2引数には、コマンドがBATかEXEかを指定できます。
 void setEnvP(java.lang.String[] env)
          環境変数設定の配列指定します。
 void setTimeout(int tout)
          プロセスの実行処理のタイムアウトを設定します。
 void setWait(boolean flag)
          プロセスの実行処理の終了を待つかどうか
 void setWorkDir(java.io.File dir)
          作業ディレクトリを指定します。
 java.lang.String toString()
          この Shell のインフォメーション(情報)を出力します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

OK

public static final int OK
Shell オブジェクトの状態を表します。正常 0

関連項目:
定数フィールド値

RUNNING

public static final int RUNNING
Shell オブジェクトの状態を表します。実行中 1

関連項目:
定数フィールド値

CANCEL

public static final int CANCEL
Shell オブジェクトの状態を表します。取消 9

関連項目:
定数フィールド値

ERROR

public static final int ERROR
Shell オブジェクトの状態を表します。異常終了(負) -1

関連項目:
定数フィールド値
コンストラクタの詳細

Shell

public Shell()
メソッドの詳細

setCommand

public void setCommand(java.lang.String cmd,
                       boolean batch)
プロセスを実行する時に引き渡すコマンド 第2引数には、コマンドがBATかEXEかを指定できます。 true の場合は,バッチコマンドとして処理されます。

パラメータ:
cmd - String コマンド
batch - boolean true:バッチファイル/false:EXEファイル
変更履歴:
3.3.3.0 (2003/07/09) Windows XP 対応
3.7.0.1 (2005/01/31) Windows 2003 対応, Windows 95 除外
3.8.9.2 (2007/07/13) Windows Vista 対応

setCommand

public void setCommand(java.lang.String cmd)
プロセスを実行する時に引き渡すコマンド

パラメータ:
cmd - EXEコマンド

setWait

public void setWait(boolean flag)
プロセスの実行処理の終了を待つかどうか

パラメータ:
flag - boolean true:待つ(デフォルト)/ false:待たない

setTimeout

public void setTimeout(int tout)
プロセスの実行処理のタイムアウトを設定します。 ゼロ(0) の場合は、割り込みが入るまで待ちつづけます。

パラメータ:
tout - int タイムアウト時間(秒) ゼロは、無制限

setWorkDir

public void setWorkDir(java.io.File dir)
作業ディレクトリを指定します。 シェルを実行する、作業ディレクトリを指定します。 指定しない場合は、このJava仮想マシンの作業ディレクトリで実行されます。

パラメータ:
dir - 作業ディレクトリ

setEnvP

public void setEnvP(java.lang.String[] env)
環境変数設定の配列指定します。 環境変数を、name=value という形式で、文字列配列で指定します。 null の場合は、現在のプロセスの環境設定を継承します。

パラメータ:
env - 文字列の配列。配列の各要素は、name=value という形式で環境変数設定を保持する。

exec

public int exec()
プロセスの実行処理

戻り値:
サブプロセスの終了コードを返します。0 は正常終了を示す

getStdoutData

public java.lang.String getStdoutData()
プロセスの実行時の標準出力を取得します。

戻り値:
実行時の標準出力文字列

getStderrData

public java.lang.String getStderrData()
プロセスの実行時のエラー出力を取得します。

戻り値:
実行時の標準出力文字列

getCommand

public java.lang.String getCommand()
プロセスが実際に実行するコマンドを取得します。 バッチコマンドかどうかで、実行されるコマンドが異なりますので、 ここで取得して確認することができます。 主にデバッグ用途です。

戻り値:
実行時の標準出力文字列

destroy

public void destroy()
サブプロセスを終了します。 この Process オブジェクトが表すサブプロセスは強制終了されます。


isEnd

public boolean isEnd()
プロセスが終了しているかどうかを確認します。 この Process オブジェクトが表すサブプロセスは強制終了されます。


exitValue

public int exitValue()
サブプロセスの終了コードを返します。

戻り値:
この Process オブジェクトが表すサブプロセスの終了コード。0 は正常終了を示す
例外:
java.lang.IllegalThreadStateException - この Process オブジェクトが表すサブプロセスがまだ終了していない場合

toString

public java.lang.String toString()
この Shell のインフォメーション(情報)を出力します。 コマンド、開始時刻、終了時刻、状態(実行中、終了)などの情報を、 出力します。

オーバーライド:
クラス java.lang.Object 内の toString

openGion 5.4.3.3

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.