From 61feceab1df6ab0a943aa88415c0b1f23b7bb49e Mon Sep 17 00:00:00 2001 From: Giovanni Di Grezia Date: Tue, 17 Dec 2013 18:10:17 +0100 Subject: [PATCH] =?UTF-8?q?Creato=20Sistema=20per=20Far=20terminare=20il?= =?UTF-8?q?=20main=20senza=20aprire=20una=20infinit=C3=A0=20di=20chiamate?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- it/unisa/info13d/GestioneCatalogo/AdminSession.java | 9 ++++++++- it/unisa/info13d/GestioneCatalogo/Catalogo.java | 12 ++++++++---- it/unisa/info13d/GestioneCatalogo/ClientSession.java | 5 +++-- it/unisa/info13d/Main.java | 7 ++++++- it/unisa/info13d/Utility/ReShow.java | 11 +++++++++++ 5 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 it/unisa/info13d/Utility/ReShow.java diff --git a/it/unisa/info13d/GestioneCatalogo/AdminSession.java b/it/unisa/info13d/GestioneCatalogo/AdminSession.java index 7d2a693..bdcc893 100644 --- a/it/unisa/info13d/GestioneCatalogo/AdminSession.java +++ b/it/unisa/info13d/GestioneCatalogo/AdminSession.java @@ -1,6 +1,7 @@ package it.unisa.info13d.GestioneCatalogo; import it.unisa.info13d.Articoli.Utilizzabile; +import it.unisa.info13d.Utility.ReShow; import java.util.ArrayList; import java.util.Scanner; @@ -16,7 +17,7 @@ public class AdminSession { /** * Questo metodo visualizza il menu per gli Amministratori */ - public static void showAdminMenu(Catalogo catalogo) { + public static void showAdminMenu(Catalogo catalogo, ReShow r) { System.out.println("------------ Admin Menu ------------"); System.out.println("1 --> Nuovo Prodotto"); //Inserisce un nuovo prodotto in vendita nel catalogo System.out.println("2 --> Cancella Prodotto"); //Cancella un prodotto in offerta nel catalogo @@ -38,14 +39,20 @@ public class AdminSession { switch(sceltaMenu) { case "1": + catalogo.nuovoProdotto(); + break; case "2": + catalogo.cancellaProdotto(); break; case "3": + catalogo.offerteAttive(); break; case "4": + catalogo.offerteScadute(); break; case "5": + r.reshow = false; break; } diff --git a/it/unisa/info13d/GestioneCatalogo/Catalogo.java b/it/unisa/info13d/GestioneCatalogo/Catalogo.java index b8dff70..d59619e 100644 --- a/it/unisa/info13d/GestioneCatalogo/Catalogo.java +++ b/it/unisa/info13d/GestioneCatalogo/Catalogo.java @@ -3,6 +3,7 @@ package it.unisa.info13d.GestioneCatalogo; import it.unisa.info13d.Articoli.Global; import it.unisa.info13d.Articoli.Utilizzabile; import it.unisa.info13d.Login.Entry; +import it.unisa.info13d.Utility.ReShow; import java.io.*; import java.util.ArrayList; @@ -40,17 +41,20 @@ public class Catalogo{ * * @param userType is the type of user obtained from the main */ - public void showMenu(String userType) + public void showMenu(String userType,ReShow r) { if(userType.equals("Admin")) - AdminSession.showAdminMenu(this); + AdminSession.showAdminMenu(this,r); else - ClientSession.showClientMenu(this); + ClientSession.showClientMenu(this,r); } public void nuovoProdotto() { - + + + + } public void cancellaProdotto() diff --git a/it/unisa/info13d/GestioneCatalogo/ClientSession.java b/it/unisa/info13d/GestioneCatalogo/ClientSession.java index 4737c16..3b85c1c 100644 --- a/it/unisa/info13d/GestioneCatalogo/ClientSession.java +++ b/it/unisa/info13d/GestioneCatalogo/ClientSession.java @@ -1,6 +1,7 @@ package it.unisa.info13d.GestioneCatalogo; import it.unisa.info13d.Articoli.Utilizzabile; +import it.unisa.info13d.Utility.ReShow; import java.util.ArrayList; import java.util.Scanner; @@ -14,7 +15,7 @@ public class ClientSession { /** * Questo metodo visualizza il menu per i Clienti */ - public static void showClientMenu(Catalogo catalogo) { + public static void showClientMenu(Catalogo catalogo, ReShow r) { System.out.println("------------ Menu operazioni ------------"); System.out.println("1 --> Acquista Credito"); //Si acquista credito per l'acquisto dei prodotti System.out.println("2 --> Visualizza Offerte"); //Visualizza le offerte acquistabili @@ -48,7 +49,7 @@ public class ClientSession { break; case "5": - + r.reshow = false; break; } diff --git a/it/unisa/info13d/Main.java b/it/unisa/info13d/Main.java index ae414b3..62aad84 100644 --- a/it/unisa/info13d/Main.java +++ b/it/unisa/info13d/Main.java @@ -7,6 +7,7 @@ import it.unisa.info13d.Login.LoginData; import java.io.FileNotFoundException; import java.io.IOException; +import it.unisa.info13d.Utility.ReShow; public class Main { @@ -16,7 +17,11 @@ public class Main { login.getUserDataInfo(); Catalogo load_catalogo = new Catalogo(); - load_catalogo.showMenu(login.getType()); + + + ReShow r = new ReShow(); + for (;r.reshow;) + load_catalogo.showMenu(login.getType(),r); } diff --git a/it/unisa/info13d/Utility/ReShow.java b/it/unisa/info13d/Utility/ReShow.java new file mode 100644 index 0000000..d2bc20a --- /dev/null +++ b/it/unisa/info13d/Utility/ReShow.java @@ -0,0 +1,11 @@ +package it.unisa.info13d.Utility; + +/** + * Created with MONSTER. + * User: xgiovio + * Date: 17/12/13 + * Time: 18.06 + */ +public class ReShow { + public boolean reshow = true; +}