home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1999 November / PCONLINE_11_99.ISO / filesbbs / OS2 / APCHSSL2.ZIP / OS2HTTPD / jserv / com / bitmechanic / util / SyncExec.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-02-02  |  1.8 KB  |  44 lines

  1. package com.bitmechanic.util;
  2.  
  3. import java.io.IOException;
  4. import java.io.OutputStream;
  5.  
  6. public class SyncExec {
  7.    private SyncExec() {
  8.    }
  9.  
  10.    public static Process exec(String[] var0, OutputStream var1, OutputStream var2) throws IOException, InterruptedException {
  11.       Process var3 = Runtime.getRuntime().exec(var0);
  12.       Pump var4 = new Pump(var3.getInputStream(), var1);
  13.       Pump var5 = new Pump(var3.getErrorStream(), var2);
  14.       ((Thread)var4).start();
  15.       ((Thread)var5).start();
  16.       ((Thread)var4).join();
  17.       ((Thread)var5).join();
  18.       return var3;
  19.    }
  20.  
  21.    public static Process exec(String var0, OutputStream var1, OutputStream var2) throws IOException, InterruptedException {
  22.       Process var3 = Runtime.getRuntime().exec(var0);
  23.       Pump var4 = new Pump(var3.getInputStream(), var1);
  24.       Pump var5 = new Pump(var3.getErrorStream(), var2);
  25.       ((Thread)var4).start();
  26.       ((Thread)var5).start();
  27.       ((Thread)var4).join();
  28.       ((Thread)var5).join();
  29.       return var3;
  30.    }
  31.  
  32.    public static void main(String[] var0) {
  33.       try {
  34.          Process var1 = exec((String[])var0, System.out, System.err);
  35.          int var2 = var1.waitFor();
  36.          System.out.flush();
  37.          System.err.flush();
  38.          System.out.println("Status: " + var2);
  39.       } catch (Exception var3) {
  40.          System.err.println(((Throwable)var3).toString());
  41.       }
  42.    }
  43. }
  44.