public void run() { while (true) { try { System.out.println("Server name: " + serverSocket.getInetAddress().getHostName()); System.out.println("Waiting for client on port " + serverSocket.getLocalPort() + "..."); Socket server = serverSocket.accept(); System.out.println("Just connected to " + server.getRemoteSocketAddress()); ObjectInputStream objectIn = new ObjectInputStream(server.getInputStream()); try { Recipe rec = (Recipe) objectIn.readObject(); startHMI(rec, rec.getProductName()); // System.out.println("Object Received: width: "+rec.getWidth()+" height: // "+rec.getHeight()); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } DataOutputStream out = new DataOutputStream(server.getOutputStream()); out.writeUTF( "Thank you for connecting to " + server.getLocalSocketAddress() + "\nGoodbye!"); server.close(); } catch (SocketTimeoutException s) { System.out.println("Socket timed out!"); break; } catch (IOException e) { e.printStackTrace(); break; } } }
public static void main(String[] args) { String serverName = args[0]; int port = Integer.parseInt(args[1]); try { System.out.println("Connecting to " + serverName + " on port " + port); Socket client = new Socket(serverName, port); System.out.println("Just connected to " + client.getRemoteSocketAddress()); OutputStream outToServer = client.getOutputStream(); DataOutputStream out = new DataOutputStream(outToServer); out.writeUTF("Hello from " + client.getLocalSocketAddress()); InputStream inFromServer = client.getInputStream(); DataInputStream in = new DataInputStream(inFromServer); System.out.println("Server says " + in.readUTF()); client.close(); } catch (IOException e) { e.printStackTrace(); } }
public Address localAddress() { InetSocketAddress local_addr = sock != null ? (InetSocketAddress) sock.getLocalSocketAddress() : null; return local_addr != null ? new IpAddress(local_addr) : null; }