import java.io.*; import java.io.PrintWriter; import java.io.IOException; import java.net.*; import java.net.ServerSocket; abstract public class DaemonBase extends ExecutableBase implements Runnable { final int DEFAULT_PORT = 5000; public int port = 0; // define port associated (arg) // // opens a socket thread public DaemonBase() { this.port = this.DEFAULT_PORT; } public DaemonBase(int port) throws IOException { this.port = port; } public void run() { ServerSocket server; Socket client; BufferedReader in; PrintWriter out; String line; try { server = new ServerSocket(this.port); } catch (IOException e) { System.out.println("Could not listen on port " + port); System.exit(-1); } while(true) { try { client = server.accept(); } catch (IOException e) { System.out.println("Accept failed: " + port); System.exit(-1); } try { in = new BufferedReader(new InputStreamReader( client.getInputStream())); out = new PrintWriter(client.getOutputStream(), true); } catch (IOException e) { System.out.println("Read failed"); System.exit(-1); } while(true) { try { line = in.readLine(); if (line.equals("ping")) { //Send data back to client out.println("pong"); } } catch (IOException e) { System.out.println("Read failed"); client.close(); } } } } } jay@slicer:~/ee/daemon$ javac DaemonBase.java DaemonBase.java:40: variable server might not have been initialized client = server.accept(); ^ DaemonBase.java:48: variable client might not have been initialized client.getInputStream())); ^ DaemonBase.java:58: variable in might not have been initialized line = in.readLine(); ^ DaemonBase.java:61: variable out might not have been initialized out.println("pong"); ^ DaemonBase.java:65: variable client might not have been initialized client.close(); ^ DaemonBase.java:65: unreported exception java.io.IOException; must be caught or declared to be thrown client.close(); ^ 6 errors jay@slicer:~/ee/daemon$