/** * Funkcija za autorizaciju korisnika. * * @param korisnik * @param zaporka * @return vraæa null ako je autorizacija uspjela inaèe vraæa poruku greške. */ public String login(Igrac korisnik, String zaporka) { connect(); try { ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream()); paketZaServer.writeObject( new NabaviPaket(0, korisnik.getIme(), zaporka)); // send serilized payload ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream()); NabaviPaket paketSKljucem = (NabaviPaket) paketOdServera.readObject(); if (paketSKljucem.isIndex(0)) { korisnik.setKljucKorisnika(paketSKljucem.getKljuc()); return null; } else if (paketSKljucem.isIndex(-1)) { return paketSKljucem.getErr(); } paketZaServer.close(); paketOdServera.close(); } catch (IOException ioe) { System.out.println("Iznimka ulaza/izlaza"); System.exit(1); } catch (ClassNotFoundException k) { System.out.println("Dobivena kriva klasa " + k); } finally { close(); } return "Iznimka reda 0"; }
/** * Funkcija za deautorizaciju korisnika * * @param korisnik * @return vraæa null ako je autorizacija uspjela inaèe vraæa poruku greške. */ public String logout(Igrac korisnik) { connect(); try { ObjectOutputStream paketZaServer = new ObjectOutputStream(klijentSocket.getOutputStream()); NabaviPaket t = new NabaviPaket(6); t.setUser(korisnik.getIme()); paketZaServer.writeObject(t); ObjectInputStream paketOdServera = new ObjectInputStream(klijentSocket.getInputStream()); NabaviPaket paket = (NabaviPaket) paketOdServera.readObject(); if (paket.isIndex(4)) { return null; } else if (paket.isIndex(-1)) { return paket.getErr(); } paketZaServer.close(); paketOdServera.close(); } catch (IOException ioe) { System.out.println("Iznimka ulaza/izlaza"); System.exit(1); } catch (ClassNotFoundException k) { System.out.println("Dobivena kriva klasa " + k); } finally { close(); } return "Iznimka reda 0"; }