rendered paste bodyimport java.io.*;import java.net.*;import java.util.*;public class FrubiServer{ public static void main(String args[]){ new FrubiServerConnection().start(); }}class FrubiServerConnection extends Thread { private ServerSocket gniazdoServera = null; private Socket gniazdoKlienta = null; FrubiServerConnection(){ try{ gniazdoServera = new ServerSocket(101); System.out.println("Server odpalony pomyslnie! Nasluchuje na porcie " + gniazdoServera.getLocalPort() +"!\n"); } catch(IOException e){ System.out.println("Nasluchiwanie na porcie: " + gniazdoServera.getLocalPort() + " niemozliwe, " + e); System.exit(1); } } public void run(){ while(true){ try{ System.out.println("Oczekiwanie az ktos sie z nami polaczy!\n"); gniazdoKlienta = gniazdoServera.accept(); System.out.println("Polonczenie z klientem nawiazane!\n"); new FrubiServerUser(gniazdoKlienta); } catch(IOException e){ System.out.println("Polaczenie na porcie " + gniazdoServera.getLocalPort() + " nie powiodlo sie z powodu " + e +"!\n"); System.exit(1); } } } protected void finalize(){ System.out.println("Polaczenia juz nie beda przyjmowane!"); try{ gniazdoServera.close(); } catch(IOException e){ System.out.println("Zamykanie gniazda zakończone fiaskiem :/ Błąd: "+e+"\n"); } }}class FrubiServerUser extends Thread { Socket Klient = null; BufferedReader br = null; PrintWriter pw = null; String liniaWe, liniaWy; FrubiServerUser(Socket klient){ this.Klient = klient; try{ br = new BufferedReader(new InputStreamReader(Klient.getInputStream())); pw = new PrintWriter(new BufferedOutputStream(Klient.getOutputStream(), 1024), false); } catch(IOException e){ System.out.println("Wystapil blad przy tworzeniu strumieni od/do usera: "+ e +"\n"); } this.start(); } public void run(){ try{ pw.println("Server Frubiego wita Cie drogi uzytkowniku, jesli potrzebujesz informacji wpisz"+ " \"help\"! (help jeszcze jest nieaktywny :( )"); pw.flush(); while ((liniaWe = br.readLine()) != null){ liniaWy = "Server jeszcze nie jest aktywny!"; pw.println(liniaWy); pw.flush(); break; } } catch(IOException e){ e.printStackTrace(); } stop(); } protected void finalize(){ try{ pw.close(); br.close(); Klient.close(); } catch(IOException e){ System.out.println("Przy wychodzeniu usera pojawil sie blad: "+ e +"\n"); } System.out.println("User wyszedł!"); }}