All pastes #2124947 Raw Edit

Anonymous

public text v1 · immutable
#2124947 ·published 2012-03-06 23:05 UTC
rendered paste body
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

class Forwarder implements Runnable {
		
		InputStream in;
		OutputStream out;
		
		public Forwarder(InputStream in, OutputStream out)
		{
			this.in = (in);
			this.out = (out);
		}
		
		@Override
		public void run() {
			// TODO Auto-generated method stub
			int input = 0;
			try {
			
				while ((input = in.read()) != -1)
				{
					
					//System.out.println(Thread.currentThread().getId() + " Read " + input);
					out.write(input);
					out.flush();
				}
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
		
	}

public class GDBWrapper {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try { 
			System.out.println("Yello");
			
			Process p = Runtime.getRuntime().exec("gdb");
			InputStream gdbInputStream = p.getInputStream();
			InputStream gdbErrorStream = p.getErrorStream();
			OutputStream gdbOutputStream = p.getOutputStream();
			
			Thread stdinToGDB = new Thread(new Forwarder(System.in, gdbOutputStream));
			Thread gdbOutToOut = new Thread(new Forwarder(gdbInputStream,System.out));
			Thread gdbErrToErr = new Thread(new Forwarder(gdbErrorStream, System.err));
			
			stdinToGDB.start();
			gdbOutToOut.start();
			gdbErrToErr.start();
			
			
		} catch(Exception e)
		{
			e.printStackTrace();
		}
		
		
		
		
	}

	
}