File tree Expand file tree Collapse file tree 6 files changed +103
-0
lines changed
Expand file tree Collapse file tree 6 files changed +103
-0
lines changed Original file line number Diff line number Diff line change 1+ * .class
Original file line number Diff line number Diff line change 1+ import java .io .BufferedReader ;
2+ import java .io .PrintWriter ;
3+ import java .io .IOException ;
4+ import java .net .ServerSocket ;
5+ import java .net .Socket ;
6+
7+ public class BaseHTTPServer {
8+ private int port = 80 ;
9+ private BufferedReader reader ;
10+ private PrintWriter writer ;
11+ private ServerSocket ss ;
12+ private Socket s ;
13+
14+ public void initServerSocket () {
15+ try {
16+ ss = new ServerSocket (port );
17+ } catch (IOException e ) {
18+ System .out .println (e .getMessage ());
19+ }
20+ }
21+
22+ public void acceptConectionsAndThrowToHandlers () {
23+ try {
24+ while (true ) {
25+ s = ss .accept ();
26+ (new Thread (new ConnectionHandler (s .getInputStream ()))).start ();
27+ }
28+
29+ } catch (IOException e ) {
30+ System .out .println (e .getMessage ());
31+ }
32+ }
33+
34+ public BaseHTTPServer (int port ) {
35+ this .port = port ;
36+ initServerSocket ();
37+ acceptConectionsAndThrowToHandlers ();
38+ }
39+
40+ public BaseHTTPServer () {
41+ initServerSocket ();
42+ acceptConectionsAndThrowToHandlers ();
43+ }
44+
45+
46+ }
Original file line number Diff line number Diff line change 1+ import java .io .InputStream ;
2+ import java .io .IOException ;
3+ import java .io .BufferedReader ;
4+ import java .io .InputStreamReader ;
5+
6+ public class ConnectionHandler implements Runnable {
7+
8+ BufferedReader br ;
9+
10+ public ConnectionHandler (InputStream is ) {
11+ this .br = new BufferedReader (new InputStreamReader (is ));
12+ }
13+
14+
15+ public void run () {
16+ try {
17+ String c ;
18+ while ((c = br .readLine ()) != null ) {
19+ System .out .println (c );
20+ }
21+
22+ } catch (IOException e ) {
23+ System .out .println (e .getMessage ());
24+ }
25+ }
26+ }
Original file line number Diff line number Diff line change 1+ import java .net .InetAddress ;
2+ import java .net .Socket ;
3+ import java .io .BufferedReader ;
4+ import java .io .InputStreamReader ;
5+ import java .io .PrintWriter ;
6+ import java .net .InetAddress ;
7+
8+ public class TestingClient {
9+
10+ public static void main (String [] args ) throws Exception {
11+ int port = 8000 ;
12+ String hostName = InetAddress .getLocalHost ().toString ();
13+
14+ Socket s = new Socket (hostName , port );
15+
16+ BufferedReader br = new BufferedReader (new InputStreamReader (s .getInputStream ()));
17+ PrintWriter pr = new PrintWriter (s .getOutputStream (), true );
18+
19+ pr .println ("testing... 123.... testing?" );
20+
21+ s .close ();
22+ }
23+ }
Original file line number Diff line number Diff line change 1+
2+ public class TestingServer {
3+
4+ public static void main (String [] args ) {
5+ BaseHTTPServer bhs = new BaseHTTPServer (8000 );
6+ }
7+ }
You can’t perform that action at this time.
0 commit comments