@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Rezerwacja that = (Rezerwacja) o; if (id != that.id) return false; if (rabat != that.rabat) return false; if (potwierdzenieRezerwacji != that.potwierdzenieRezerwacji) return false; if (klient != null ? !klient.equals(that.klient) : that.klient != null) return false; if (kategoriaPojazdu != null ? !kategoriaPojazdu.equals(that.kategoriaPojazdu) : that.kategoriaPojazdu != null) return false; if (miejsceOdbioru != null ? !miejsceOdbioru.equals(that.miejsceOdbioru) : that.miejsceOdbioru != null) return false; if (sposobDostarczeniaRezerwacji != null ? !sposobDostarczeniaRezerwacji.equals(that.sposobDostarczeniaRezerwacji) : that.sposobDostarczeniaRezerwacji != null) return false; if (dataWypozyczenia != null ? !dataWypozyczenia.equals(that.dataWypozyczenia) : that.dataWypozyczenia != null) return false; return dataOddania != null ? dataOddania.equals(that.dataOddania) : that.dataOddania == null; }
public void dodajKlienta(Klient klient) { // klucz wartosc idIKlienci.put(klient.getId(), klient); /* Co sie dzieje w hashmapie 1 -> Klient A 2 -> Klient B 3 -> Klient C */ // Klient dodanyKlient = idIKlienci.get(klient.getId()); }
/** @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ManagerTerapeutkaMysql ter = new ManagerTerapeutkaMysql(); ManagerKlientMysql kli = new ManagerKlientMysql(); if (ter.getConnection() == null) { System.out.println("Błąd połączenia!"); } else { System.out.println("Połączenie nawiązano"); } Terapeutka nowa = ter.get(1); System.out.println(nowa.getImie()); List<Terapeutka> list = ter.getAll(); Terapeutka b = list.get(0); System.out.println(b.getEmail()); Klient nowkl = kli.get(2); System.out.println(nowkl.getImie()); List<Klient> listK = kli.getAll(); Klient a = listK.get(3); System.out.println(a.getImie()); }
@Override public int hashCode() { int result = id; result = 31 * result + rabat; result = 31 * result + (klient != null ? klient.hashCode() : 0); result = 31 * result + (kategoriaPojazdu != null ? kategoriaPojazdu.hashCode() : 0); result = 31 * result + (miejsceOdbioru != null ? miejsceOdbioru.hashCode() : 0); result = 31 * result + (sposobDostarczeniaRezerwacji != null ? sposobDostarczeniaRezerwacji.hashCode() : 0); result = 31 * result + (potwierdzenieRezerwacji ? 1 : 0); result = 31 * result + (dataWypozyczenia != null ? dataWypozyczenia.hashCode() : 0); result = 31 * result + (dataOddania != null ? dataOddania.hashCode() : 0); return result; }
/** dodawanie klienta */ public void addKlient( String imie, String nazwisko, String nazwa_firmy, String nip, String regon, int telefon) { klient.setImie(imie); klient.setNazwa_firmy(nazwa_firmy); klient.setNazwisko(nazwisko); /** WartoϾ unikalna */ klient.setNip(nip); /** WartoϾ unikalna */ klient.setRegon(regon); klient.setTelefon(telefon); klientIm.add(klient); }
/** Wyœwietlenie wszystkich klientów w bazie danych */ public void listKlients(List<Klient> dane) { for (Klient dana : dane) { System.out.println("-----------------------------------------------------"); System.out.println( "\n" + dana.getKlient_id() + " | " + dana.getImie() + " | " + dana.getNazwa_firmy() + " | " + dana.getNip() + " | " + dana.getRegon() + " | " + dana.getTelefon()); } }
@Override public void visit(Klient klient) { System.out.println(klient.getName()); liczbaKlientow++; }
/** * funkcja pozwalaj¹ca na automatyczne wykonywanie protoko³u ECDH. Przyjmuje parametry krzywej * eliptycznej z pliku i zapisuje do pliku o takiej samej nazwie z przyrostkiem <i>output<i> * * @param filename nazwa pliku, z którego maj¹ zostaæ pobrane parametry */ private static void autoECDH(String filename) { try { FileInputStream fstream = new FileInputStream(filename + ".txt"); DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; String strOut = new String(); int m = 0; int k = 0; BigInteger gx = BigInteger.ZERO; BigInteger gy = BigInteger.ZERO; BigInteger a2 = BigInteger.ZERO; BigInteger a6 = BigInteger.ZERO; Klient klientA; Klient klientB; ECPunkt punktG = null; while ((strLine = br.readLine()) != null) { try { if (strLine.startsWith("k: ")) { k = Integer.parseInt(strLine.substring(3)); while (!(strLine = br.readLine()).equals("")) { if (strLine.startsWith("m: ")) { m = Integer.parseInt(strLine.substring(3)); continue; } else if (strLine.startsWith("Gx: ")) { gx = new BigInteger(strLine.substring(4), 16); continue; } else if (strLine.startsWith("Gy: ")) { gy = new BigInteger(strLine.substring(4), 16); continue; } else if (strLine.startsWith("a2: ")) { a2 = new BigInteger(strLine.substring(4), 16); continue; } else if (strLine.startsWith("a6: ")) { a6 = new BigInteger(strLine.substring(4), 16); continue; } } } if (m == 0 || k == 0 || (gx.equals(BigInteger.ZERO)) || (gy.equals(BigInteger.ZERO)) || (a2.equals(BigInteger.ZERO)) || (a6.equals(BigInteger.ZERO))) throw new IllegalArgumentException("Zmienne nie zosta³y zainicjalizowane"); if (k >= m) throw new IllegalArgumentException("Wyk³adnik k nie mo¿e byæ wiêkszy ni¿ m"); if (m <= 1) throw new IllegalArgumentException("Wyk³adnik k nie mo¿e byæ wiêkszy ni¿ m"); if (gx.toString(2).length() > m || gy.toString(2).length() > m || a2.toString(2).length() > m || a6.toString(2).length() > m) throw new IllegalArgumentException("Wartoœci parametrów wykraczaj¹ poza zakres"); System.out.println("k: " + k); System.out.println("m: " + m); System.out.println("Gx: " + gx.toString(16)); System.out.println("Gy: " + gy.toString(16)); System.out.println("a2: " + a2.toString(16)); System.out.println("a6: " + a6.toString(16)); punktG = new ECPunkt(m, k, a2, a6, gx, gy); if (!punktG.naEC()) throw new IllegalArgumentException( "Generator nie nale¿y do zbioru punktów krzywej eliptycznej"); ////////////////////////////// Sprawdzenie nieprzywiedlnoœci wielomianu modulo Polynomial p = new Polynomial(); p = p.setDegree(new BigInteger(Integer.toString(m))); p = p.setDegree(new BigInteger(Integer.toString(k))); p = p.setDegree(BigInteger.ZERO); if (p.isReducible()) throw new IllegalArgumentException("Wielomian modulo cia³a nie jest nieprzywiedlny"); ///////////////////////////////////////////////////////////////////////////// klientA = new Klient(punktG); klientA.genKluczaPrywatnego(m); System.out.println("A.Prywatny: " + klientA.kluczPrywatny.toString(16) + "\r\n"); klientB = new Klient(punktG); klientB.genKluczaPrywatnego(m); System.out.println("B.Prywatny: " + klientB.kluczPrywatny.toString(16) + "\r\n"); klientB.ustawKluczPublicznyB(klientA.oblKluczaPublicznego()); System.out.println("APub.X: " + klientA.kluczPubliczny.X.b.toString(16) + "\r\n"); System.out.println("APub.Y: " + klientA.kluczPubliczny.Y.b.toString(16) + "\r\n"); klientA.ustawKluczPublicznyB(klientB.oblKluczaPublicznego()); System.out.println("BPub.X: " + klientB.kluczPubliczny.X.b.toString(16) + "\r\n"); System.out.println("BPub.Y: " + klientB.kluczPubliczny.Y.b.toString(16) + "\r\n"); klientA.oblKluczaTajnego(); System.out.println("ATajny.X: " + klientA.kluczTajny.X.b.toString(16) + "\r\n"); System.out.println("ATajny.Y: " + klientA.kluczTajny.Y.b.toString(16) + "\r\n"); klientB.oblKluczaTajnego(); System.out.println("BTajny.X: " + klientB.kluczTajny.X.b.toString(16) + "\r\n"); System.out.println("BTajny.Y: " + klientB.kluczTajny.Y.b.toString(16) + "\r\n"); GF2Elem xCord = new GF2Elem(klientA.kluczTajny.X); if (xCord.dodaj(klientB.kluczTajny.X).b.equals(BigInteger.ZERO)) { /// Algorytm zadzia³a³ poprawnie strOut = strOut.concat("////////////////////////////////////////" + "\r\n"); strOut = strOut.concat("k: " + k + "\r\n"); strOut = strOut.concat("m: " + m + "\r\n"); strOut = strOut.concat("Gx: " + gx.toString(16) + "\r\n"); strOut = strOut.concat("Gy: " + gy.toString(16) + "\r\n"); strOut = strOut.concat("a2: " + a2.toString(16) + "\r\n"); strOut = strOut.concat("a6: " + a6.toString(16) + "\r\n"); strOut = strOut.concat("\nWygenerowane parametry sesji:" + "\r\n"); strOut = strOut.concat("APub.X: " + klientA.kluczPubliczny.X.b.toString(16) + "\r\n"); strOut = strOut.concat("APub.Y: " + klientA.kluczPubliczny.Y.b.toString(16) + "\r\n"); strOut = strOut.concat("BPub.X: " + klientB.kluczPubliczny.X.b.toString(16) + "\r\n"); strOut = strOut.concat("BPub.Y: " + klientB.kluczPubliczny.Y.b.toString(16) + "\r\n"); strOut = strOut.concat("Wspolny klucz sesji: " + klientA.genklucz01() + "\r\n"); System.out.println("Wspolny klucz sesji: " + klientA.genklucz01() + "\r\n"); strOut = strOut.concat("////////////////////////////////////////" + "\r\n"); } else { /// Algorytm nie zadzia³a³ poprawnie strOut = strOut.concat("////////////////////////////////////////" + "\r\n"); strOut = strOut.concat("k: " + k + "\r\n"); strOut = strOut.concat("m: " + m + "\r\n"); strOut = strOut.concat("Gx: " + gx.toString(16) + "\r\n"); strOut = strOut.concat("Gy: " + gy.toString(16) + "\r\n"); strOut = strOut.concat("a2: " + a2.toString(16) + "\r\n"); strOut = strOut.concat("a6: " + a6.toString(16) + "\r\n"); strOut = strOut.concat("\nAlgorytm nie zadzia³a³ poprawnie" + "\r\n"); System.out.println("\nAlgorytm nie zadzia³a³ poprawnie" + "\r\n"); strOut = strOut.concat("////////////////////////////////////////" + "\r\n"); } } catch (NumberFormatException e) { System.out.println("Wprowadzone parametry nie s¹ w kodzie HEX"); } catch (IllegalArgumentException e) { System.out.println("B³êdnie sformatowane dane w pliku"); } FileOutputStream foutstream = new FileOutputStream(filename + "output.txt", true); DataOutputStream out = new DataOutputStream(foutstream); BufferedWriter boutr = new BufferedWriter(new OutputStreamWriter(out)); boutr.write(strOut); m = 0; k = 0; gx = BigInteger.ZERO; gy = BigInteger.ZERO; a2 = BigInteger.ZERO; a6 = BigInteger.ZERO; strOut = null; boutr.close(); out.close(); } in.close(); } catch (Exception e) { System.err.println("Error: " + e.getMessage()); e.printStackTrace(); } }