12.07.2015 Views

Università degli Studi di Napoli Federico II Facoltà di ... - Scope

Università degli Studi di Napoli Federico II Facoltà di ... - Scope

Università degli Studi di Napoli Federico II Facoltà di ... - Scope

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ResultSet rs_admin = null;long app=-1;long certif_robot;long rid; //nel caso in cui esiste già questo ruololong gid; //è il gid della tabella groups!!!long last_insert_id_into_usr;long last_insert_id_into_roles;String nome,cognome,mail;LinkedList listaAccettati = new LinkedList();//Lista <strong>di</strong> tutti i gruppi presenti per usare il nuovo ruolo in ogni gruppoLinkedList gruppi = new LinkedList();listaAccettati = (LinkedList) request.getAttribute("listaAccettati");//prendo un'iteratore per scorrere la lista <strong>degli</strong> utenti accettati//quì dentro c'è l'id della tab request_pen<strong>di</strong>ngIterator i = listaAccettati.iterator();Iterator i2 = null; //questo lo usa per la lista gruppirs_gruppi = db.getGid();try {while (rs_gruppi.next()) { //inserisco tutti i gruppi nella lista gruppigruppi.add(Long.valueOf(rs_gruppi.getLong(1)));}rs_gruppi.close();} catch (SQLException ex) {ex.printStackTrace();}//prendo un iteratore per scorrere la lista gruppi!!!while(i.hasNext()){ //per ogni utente accettato!!!i2 = gruppi.iterator();app = ((Long)i.next()).longValue(); //ora ho l'id della tab request_pen<strong>di</strong>ngrelativo all'utenteresult = db.getUserRichiedente(app);//ora in result ho le info dell'utente ed ho due possibilità://o esiste già il role per l'utente perchè si è già associato a qualche altrocertif robot//oppure il role non esiste e quin<strong>di</strong> devo fare linserimento "per intero"!!!try {if (result.next()) { //sicuramente result non è null!!!nome = result.getString(2);cognome = result.getString(3);mail = result.getString(4);certif_robot = result.getLong(5);rid = db.isRole(mail);if(rid != -1){//vuol <strong>di</strong>re che il role esiste già e quin<strong>di</strong> lo devo solo associare al certif robot//perchè se esiste il role, dato che è univoco, esiste già anche lo user!!!while(i2.hasNext()){ //per ogni gruppo presente in groupsgid = ((Long)i2.next()).longValue(); //prendo il giddb.insertIntoM(certif_robot, gid, rid); //e inserisco nella tab m//se non lo voglio fare per ogni gruppo ma solo per il gruppo <strong>di</strong> default//(che è OBBLIGATORIO) ed il gruppo per gli studenti (nel mio caso 3)//basta mettere una clausula where nella query!!!}}else{ //vuol <strong>di</strong>re che il role = -1 =>non esiste alcun role del genere nel DB// e quin<strong>di</strong> devo fare l'inserimento per interolast_insert_id_into_usr = db.insertIntoUsr(nome, cognome, mail);//inserisci il ruolo e mi faccio dare il lastInsertIdlast_insert_id_into_roles = db.insertIntoRoles(mail);//adesso faccio l'ultimo inserimento in m e lo faccio per tutti i gruppi//RIPETO che se non voglio farlo per tutti i gruppi ma solo per quello <strong>di</strong>//default (l'1 che è obbligatorio) e per quello previsto per gli//utenti che useranno il certificato robot(il 3 nel mio caso) basta//mo<strong>di</strong>ficare la query relativa.Luca Gerardo 566/2636 Pagina 110 <strong>di</strong> 113

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!