Advertisement
Guest User

server

a guest
Apr 24th, 2014
40
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. package server;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.BufferedWriter;
  5. import java.io.IOException;
  6. import java.io.InputStream;
  7. import java.io.InputStreamReader;
  8. import java.io.OutputStream;
  9. import java.io.OutputStreamWriter;
  10. import java.io.PrintWriter;
  11. import java.net.ServerSocket;
  12. import java.net.Socket;
  13.  
  14.  
  15.  
  16. import support.chatFeil;
  17.  
  18. public class Server {
  19.  
  20. private int portNr;
  21. private ServerSocket serverSocket;
  22. private Socket klientSocket;
  23. private InputStream fraKlientStrom;
  24. private InputStreamReader fraKlientStromLeser;
  25. private BufferedReader fraKlientBufferLeser;
  26. private OutputStream tilKlientStrom;
  27. private OutputStreamWriter tilKlientStromSkriver;
  28. private BufferedWriter tilKlientBufferSkriver;
  29.  
  30. // konstruktør
  31. public Server(int portNr) {
  32. this.portNr = portNr;
  33.  
  34. //start server
  35. start();
  36. }
  37.  
  38. // startmetode
  39. private void start() {
  40. try {
  41. serverSocket = new ServerSocket(portNr);
  42.  
  43. // lytt etter tilkoblingsforsøk
  44. tilkoblingsLytter();
  45.  
  46.  
  47. } catch (IOException e) {
  48. System.out.println(chatFeil.IO_ERROR);
  49. }
  50.  
  51. }
  52.  
  53. // tilkoblingslytter
  54. private void tilkoblingsLytter() throws IOException {
  55. klientSocket = serverSocket.accept();
  56. fraKlientStrom = klientSocket.getInputStream();
  57. tilKlientStrom = klientSocket.getOutputStream();
  58. PrintWriter skriv = new PrintWriter(tilKlientStrom, true);
  59. skriv.println("Hai");
  60.  
  61. // send til klient når den kobler seg på
  62.  
  63.  
  64. // lytte etter beskjeder fra klient
  65. beskjedLytter();
  66.  
  67. }
  68.  
  69. // beskjedlytter
  70. private void beskjedLytter() throws IOException {
  71. fraKlientStromLeser = new InputStreamReader(fraKlientStrom);
  72. fraKlientBufferLeser = new BufferedReader(fraKlientStromLeser);
  73. tilKlientStromSkriver = new OutputStreamWriter(tilKlientStrom);
  74. tilKlientBufferSkriver = new BufferedWriter(tilKlientStromSkriver);
  75.  
  76. // venter på at beskjeder skal dukke opp i bufferlesern
  77. String beskjedFraKlient;
  78.  
  79. // henter beskjeder
  80. while( (beskjedFraKlient = fraKlientBufferLeser.readLine()) != null){
  81. //returner beskjed fra klient
  82. returnerEkko(beskjedFraKlient);
  83. }
  84.  
  85.  
  86.  
  87. }
  88.  
  89. // metode for returnering av ekko
  90. private void returnerEkko(String beskjedFraKlient) throws IOException {
  91. tilKlientBufferSkriver.write("Ekko: " + beskjedFraKlient);
  92. tilKlientBufferSkriver.newLine();
  93. tilKlientBufferSkriver.flush();
  94. }
  95.  
  96.  
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement