クラス ProcessFactory
java.lang.Object
org.opengion.hayabusa.report2.ProcessFactory
Sofficeのプロセスを管理するファクトリクラスです。
プロセスプールの実装は、AbstractObjectPoolを継承して実装されています。
プロセスの初期生成数は0です。最大生成数は、システムリソースのREPORT_MAX_PROCESS_COUNTで
定義されます。また、生存時間は、REPORT_PROCESS_ALIVEで定義されています。
プロセスを全て終了するには、clearメソッドを呼び出します。
clearメソッドは、Cleanableインターフェースの実装として組み込まれ、SytemManagerに登録されるため、
Tomcat終了時に、自動的にプロセスが終了されます。
但し、貸し出し中(処理中)のプロセスは、AbstractObjecgPoolの実装から、終了されないため、別の方法で
明示的にkillする必要があります
- 導入されたバージョン:
- JDK5.0,
-
ネストされたクラスの概要
ネストされたクラス修飾子とタイプクラス説明protected static final class
ProcessPool は、AbstractObjectPool を継承した オブジェクトプールです。 OpenOfficeのプロセスをプールします。 -
メソッドの概要
修飾子とタイプメソッド説明static void
clear()
プールされているOpenOfficeのプロセスを全てクローズします。static String
現在の状態を文字列で返します。static void
kill()
全てのsoffice.binプロセスをKILLします。 アプリケーションの終了処理で実行します。 OS名がWindowsを含む場合はtaskkill、それ以外の場合はkillallします。 又、プロセス終了後にコピーされた設定ファイルを削除します。static SOfficeProcess
OpenOfficeのプロセスを生成します。static void
release
(SOfficeProcess soffice) OpenOfficeのプロセスをリリースします。static void
remove
(SOfficeProcess soffice) OpenOfficeのプロセスをクローズします。
-
メソッドの詳細
-
newInstance
OpenOfficeのプロセスを生成します。- 戻り値:
- sofficeのプロセス
-
release
OpenOfficeのプロセスをリリースします。- パラメータ:
soffice
- SOfficeProcessオブジェクト
-
remove
OpenOfficeのプロセスをクローズします。- パラメータ:
soffice
- SOfficeProcessオブジェクト
-
clear
プールされているOpenOfficeのプロセスを全てクローズします。 -
kill
全てのsoffice.binプロセスをKILLします。 アプリケーションの終了処理で実行します。 OS名がWindowsを含む場合はtaskkill、それ以外の場合はkillallします。 又、プロセス終了後にコピーされた設定ファイルを削除します。- 変更履歴:
- 4.3.0.0 (2008/07/18) 追加, 4.3.0.0 (2008/07/22) 設定ファイルの削除を追加, 4.3.5.0 (2009/02/01) Exception をそれぞれのExceptionに分けて捕らえる。, 6.4.2.0 (2016/01/29) ex.printStackTrace() を、ThrowUtil#ogStackTrace(Throwable) に置き換え。
-
information
現在の状態を文字列で返します。- 戻り値:
- 現在の状態
- このメソッドは、nullを返しません
-