/** {@inheritDoc} */ @Override public Contratto read(String pk) { Contratto contratto = null; DAOOperatore operatore = null; DAOCliente cliente = null; DAOAgenzia agenziaNoleggio = null; DAOAgenzia agenziaConsegna = null; try { contratto = new Contratto(); operatore = new DAOOperatore(); cliente = new DAOCliente(); agenziaNoleggio = new DAOAgenzia(); agenziaConsegna = new DAOAgenzia(); ResultSet rs = connection.executeReadQuery("select * from contratto where id = " + pk + ";"); while (rs.next()) { contratto.setId(rs.getInt("id")); contratto.setOperatore(operatore.read(rs.getString("operatore"))); contratto.setCliente(cliente.read(rs.getString("cliente"))); contratto.setAgenziaNoleggio( agenziaNoleggio.read(Integer.toString(rs.getInt("agenziaNoleggio")))); contratto.setAgenziaConsegna( agenziaConsegna.read(Integer.toString(rs.getInt("agenziaconsegna")))); contratto.setDataStipula(DateHelper.dateToLocalDate(rs.getDate("datastipula"))); contratto.setDataChiusura(DateHelper.dateToLocalDate(rs.getDate("datachiusura"))); contratto.setDataInizioNoleggio( DateHelper.dateToLocalDate(rs.getDate("datainizionoleggio"))); contratto.setDataFineNoleggio(DateHelper.dateToLocalDate(rs.getDate("dataFineNoleggio"))); contratto.setChilometraggioLimitato(rs.getBoolean("chilometraggiolimitato")); contratto.setChilometriPrevisti(rs.getInt("chilometriprevisti")); contratto.setChilometriPercorsi(rs.getInt("chilometripercorsi")); contratto.setRifornimento(Rifornimento.getRifornimento(rs.getInt("rifornimento"))); contratto.setAcconto(rs.getFloat("acconto")); contratto.setChiuso(rs.getBoolean("chiuso")); contratto.setCosto(rs.getFloat("costo")); contratto.setVettura(new DAOVettura().read(rs.getString("vettura"))); contratto.setAssicurazioneAvanzata(rs.getBoolean("assicurazioneAvanzata")); ResultSet rs_optional = connection.executeReadQuery( "SELECT idOptional from optional_contratto where idContratto = " + rs.getInt(1) + ";"); List<Optional> optionals = new ArrayList<Optional>(); while (rs_optional.next()) { optionals.add(new DAOOptional().read(rs_optional.getString(1))); } contratto.setOptionals(optionals); } } catch (Exception e) { } return contratto; }