Commit 1e2d9ed0 authored by Trisha Gee's avatar Trisha Gee
Browse files

[Ch15] DailyAdviceClient uses SocketChannels and try with resources.

parent 91e344de
Loading
Loading
Loading
Loading
+8 −13
Changes for src/main/java/ch15/DailyAdviceClient.java: 8 added lines, 13 removed lines.
Original line number Diff line number Diff line
@@ -2,29 +2,24 @@ package ch15;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.InetSocketAddress;
import java.nio.channels.Channels;
import java.nio.channels.SocketChannel;
import java.nio.charset.StandardCharsets;

public class DailyAdviceClient {

  public static void main(String[] args) {
    DailyAdviceClient client = new DailyAdviceClient();
    client.go();
  }

  public void go() {
    try {
      Socket socket = new Socket("127.0.0.1", 4242);

      InputStreamReader streamReader = new InputStreamReader(socket.getInputStream());
      BufferedReader reader = new BufferedReader(streamReader);

    try (SocketChannel socketChannel = SocketChannel.open(new InetSocketAddress("127.0.0.1", 4242))) {
      BufferedReader reader = new BufferedReader(Channels.newReader(socketChannel, StandardCharsets.UTF_8));
      String advice = reader.readLine();
      System.out.println("Today you should: " + advice);

      reader.close();
    } catch(IOException ex) {
      ex.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}
 No newline at end of file