File tree Expand file tree Collapse file tree 3 files changed +14
-8
lines changed
Expand file tree Collapse file tree 3 files changed +14
-8
lines changed Original file line number Diff line number Diff line change 11package httpserver ;
22
33import java .io .IOException ;
4+ import java .net .ServerSocket ;
5+ import java .net .Socket ;
46
57public class App {
68 public static void main (String [] args ) {
79 int port = Integer .parseInt (args [1 ]);
810 String fileDirectory = args [3 ];
9- SocketServer socketServer = new SocketServer (port , fileDirectory );
1011 try {
11- socketServer .run ();
12+ ServerSocket serverSocket = new ServerSocket (port );
13+ while (true ) {
14+ Socket clientSocket = serverSocket .accept ();
15+ SocketHandler socketHandler = new SocketHandler (fileDirectory );
16+ socketHandler .process (clientSocket .getInputStream (), clientSocket .getOutputStream ());
17+ }
1218 } catch (IOException e ) {
1319 e .printStackTrace ();
1420 }
Original file line number Diff line number Diff line change 44import java .io .InputStream ;
55import java .io .OutputStream ;
66
7- public class IoProcessor {
7+ public class SocketHandler {
88 private final RequestParser requestParser ;
99 private final Responder responder ;
1010 private final ResponseWriter responseWriter ;
1111
12- public IoProcessor (String fileDirectory ) {
12+ public SocketHandler (String fileDirectory ) {
1313 this .requestParser = new RequestParser ();
1414 this .responder = new Responder (fileDirectory );
1515 this .responseWriter = new ResponseWriter ();
Original file line number Diff line number Diff line change 66
77import static org .junit .Assert .*;
88
9- public class IoProcessorTest {
9+ public class SocketHandlerTest {
1010 private final String tempdir ;
1111
12- public IoProcessorTest () {
12+ public SocketHandlerTest () {
1313 this .tempdir = System .getProperty ("java.io.tmpdir" );
1414 }
1515
@@ -25,9 +25,9 @@ public void writesRequestedFileContentsToOutputStreamForGET() throws Exception {
2525 byte [] request = ("GET " + relativePath + " HTTP/1.1\r \n Host: 127.0.0.1:5000\r \n \r \n " ).getBytes ();
2626 InputStream inputStream = new ByteArrayInputStream (request );
2727 ByteArrayOutputStream outputStream = new ByteArrayOutputStream ();
28- IoProcessor ioProcessor = new IoProcessor (tempdir );
28+ SocketHandler socketHandler = new SocketHandler (tempdir );
2929
30- ioProcessor .process (inputStream , outputStream );
30+ socketHandler .process (inputStream , outputStream );
3131
3232 String expected = "HTTP/1.1 200 OK\r \n Content-Length: 35\r \n \r \n Test file contents for GET request." ;
3333 assertEquals (expected , outputStream .toString ());
You can’t perform that action at this time.
0 commit comments