import java.util.Vector; import java.io.*; import java.net.*; class JututoaLoim extends Thread { Vector v; Socket sc; public JututoaLoim(Socket uus_sc, Vector uus_v) { v = uus_v; sc = uus_sc; start(); } // JututoaLoim public void koigile(String rida) { try { for (int i = 0; i < v.size(); i++) { Socket skt = (Socket) v.elementAt(i); PrintWriter valja = new PrintWriter(skt.getOutputStream(), true); valja.println(new Jututuba().kellaaeg() + " " + rida); } // for } catch (Exception e) { serverile("Probleem: " + e); } } public void serverile(String rida) { System.out.println(new Jututuba().kellaaeg() +" " + rida); } public void run() { try { BufferedReader sisse = new BufferedReader(new InputStreamReader(sc.getInputStream())); PrintWriter omale = new PrintWriter(sc.getOutputStream(), true); serverile("[!] Keegi kolistab ukse taga!!!!"); omale.println("TERE TULEMAST!"); omale.println("Trüki oma nimi :"); String nimi = ""; while(true){ nimi = sisse.readLine(); if (nimi.length() < 1) { omale.println("[!] Pole sobilik nimi! Proovi uuesti!"); } else sc.close(); } // while omale.println("Nüüdsest tuntakse sind siin nime järgi \"" + nimi + "\"."); omale.println("Väljumiseks trüki \".v\""); omale.println(); serverile("[!] " + nimi + " sisenes."); koigile("[!] " + nimi + " sisenes."); while (true) { String rida = sisse.readLine(); if (rida.startsWith(".v")) { serverile("[!] " + nimi + " väljus."); koigile("[!] " + nimi + " väljus."); break; } serverile("[" + nimi + "] " + rida); koigile("[" + nimi + "] " + rida); } // while sc.close(); } catch (Exception e) { serverile("Probleem: " + e); } v.remove(sc); } }