クラス SOfficeProcessTcp


  • public final class SOfficeProcessTcp
    extends SOfficeProcess
    OpenOfficeのプロセスを表すクラスです。 このクラスでは、TCPによりプロセスに接続を行います。 基本的には、パイプ名による接続(SOfficeProcess)を利用すべきですが、 x64環境で、64Bit版のJavaを起動した場合、パイプ接続では、UnsatisfiedLinkErrorが発生します。 このような場合では、TCP接続を利用することで、上記エラーを回避することができます。
    バージョン
    4.0
    作成者
    Hiroki Nakamura
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • SOfficeProcessTcp

        protected SOfficeProcessTcp​(String id,
                                    int initPort)
        コンストラクタです。
        パラメータ:
        id - プロセスID
        initPort - 初期ポート
    • メソッドの詳細

      • getConnParam

        protected String getConnParam​(String key)
        Pipe名をキーにOpenOfficeのプロセスに接続するための文字列を生成します。 ※TCP接続の場合、キーのPipe名は無視され、内部的に管理されるポート番号一覧より 接続ポートを取得します。
        オーバーライド:
        getConnParam クラス内 SOfficeProcess
        パラメータ:
        key - Pipe名(無視されます)
        戻り値:
        接続文字列
        このメソッドは、nullを返しません
      • getProcParam

        protected String getProcParam​(String key)
        Pipe名をキーにOpenOfficeのプロセスを生成するためのパラメーター文字列を生成します。 ※TCP接続の場合、キーのPipe名は無視され、内部的に管理されるポート番号一覧より 接続ポートを取得します。
        オーバーライド:
        getProcParam クラス内 SOfficeProcess
        パラメータ:
        key - Pipe名(無視されます)
        戻り値:
        プロセス生成パラメーター
        このメソッドは、nullを返しません
      • close

        public void close()
        プロセスを終了します。 また、同時に環境設定用のファイルも削除します。 ここでは、プロセスを終了すると同時に、そのプロセスのポート番号を開放し、 次に起動されるプロセスで利用できるようにします。
        オーバーライド:
        close クラス内 SOfficeProcess