From fc9310ad170b1aaa645b76138d51ce42b613e23d Mon Sep 17 00:00:00 2001 From: Giovanni Di Grezia Date: Wed, 18 Dec 2013 18:23:29 +0100 Subject: [PATCH] Migliorato il save e restore counter in modo da funzionare anche se ci sono bug o crash --- it/unisa/info13d/Articoli/Global.java | 4 ++++ it/unisa/info13d/GestioneCatalogo/Catalogo.java | 14 ++++++++------ it/unisa/info13d/Main.java | 2 +- it/unisa/info13d/Utility/IdCounter.java | 2 +- 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/it/unisa/info13d/Articoli/Global.java b/it/unisa/info13d/Articoli/Global.java index 2b1bb70..c41956e 100644 --- a/it/unisa/info13d/Articoli/Global.java +++ b/it/unisa/info13d/Articoli/Global.java @@ -28,6 +28,10 @@ public class Global { Global.general_counter = general_counter; } + public static int getGeneral_counter() { + return general_counter; + } + /** * E' il contatore statico privato */ diff --git a/it/unisa/info13d/GestioneCatalogo/Catalogo.java b/it/unisa/info13d/GestioneCatalogo/Catalogo.java index 8a3a094..8edee9a 100644 --- a/it/unisa/info13d/GestioneCatalogo/Catalogo.java +++ b/it/unisa/info13d/GestioneCatalogo/Catalogo.java @@ -7,6 +7,7 @@ import it.unisa.info13d.Articoli.Utilizzabile; import it.unisa.info13d.Articoli.Vacanze; import it.unisa.info13d.Login.Access; import it.unisa.info13d.Login.Entry; +import it.unisa.info13d.Utility.IdCounter; import it.unisa.info13d.Utility.ReShow; import it.unisa.info13d.Login.Access; import it.unisa.info13d.Login.LoggedUser; @@ -182,6 +183,7 @@ public class Catalogo{ store_data(); break; } + IdCounter.save_counter(); } public void cancellaProdotto() throws FileNotFoundException, ClassNotFoundException, IOException @@ -352,10 +354,10 @@ public class Catalogo{ trovato=true; storico.add(new StoricoItem("Viaggio: "+dealVacanza.getLocalitaViaggio(), new GregorianCalendar() ,dealVacanza.getPrezzoPSingola())); dealVacanza.setViaggiVenduti(); - loggedUser.setBalance((dealVacanza.getPrezzoPSingola()*(-1))); + loggedUser.setBalance((dealVacanza.getPrezzoPSingola() * (-1))); store_data(); Access.replace_data(user, loggedUser); - System.out.println("************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:"+loggedUser.getBalance()); + System.out.println("************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:" + loggedUser.getBalance()); } else { @@ -372,10 +374,10 @@ public class Catalogo{ trovato=true; storico.add(new StoricoItem("Prodotto: "+dealBene.getDescrizioneBene(), new GregorianCalendar() ,dealBene.getPrezzoBene())); dealBene.setBeniVenduti(); - loggedUser.setBalance((dealBene.getPrezzoBene()*(-1))); + loggedUser.setBalance((dealBene.getPrezzoBene() * (-1))); Access.replace_data(user, loggedUser); store_data(); - System.out.println("************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:"+loggedUser.getBalance()); + System.out.println("************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:" + loggedUser.getBalance()); } else { @@ -393,10 +395,10 @@ public class Catalogo{ trovato=true; storico.add(new StoricoItem("Cena ristorante "+dealCena.getNomeRistorante()+" "+dealCena.getDescrizione_cena(), new GregorianCalendar() ,dealCena.getCostoPerPersona())); dealCena.setCeneVendute(); - loggedUser.setBalance((dealCena.getCostoPerPersona()*(-1))); + loggedUser.setBalance((dealCena.getCostoPerPersona() * (-1))); Access.replace_data(user, loggedUser); store_data(); - System.out.println("*************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:"+loggedUser.getBalance()); + System.out.println("*************************************\nAcquisto completato con successo! \n************************************\nSaldo Attuale:" + loggedUser.getBalance()); } else { diff --git a/it/unisa/info13d/Main.java b/it/unisa/info13d/Main.java index 582f3e0..dab1be2 100644 --- a/it/unisa/info13d/Main.java +++ b/it/unisa/info13d/Main.java @@ -27,7 +27,7 @@ public class Main { ReShow r = new ReShow(); for (;r.reshow;) load_catalogo.showMenu(login.getType(),login.getUsername(),r); - IdCounter.save_counter(); + diff --git a/it/unisa/info13d/Utility/IdCounter.java b/it/unisa/info13d/Utility/IdCounter.java index a23cb85..7e2cf49 100644 --- a/it/unisa/info13d/Utility/IdCounter.java +++ b/it/unisa/info13d/Utility/IdCounter.java @@ -16,7 +16,7 @@ public class IdCounter { public static void save_counter() throws FileNotFoundException,IOException,ClassNotFoundException{ File f_data = new File("id_counter"); - Integer data = Integer.valueOf(Global.get_next_id() - 1); + Integer data = Integer.valueOf(Global.getGeneral_counter()); ObjectOutputStream writer = new ObjectOutputStream(new FileOutputStream(f_data)); writer.writeObject(data); writer.close();