Presentation is loading. Please wait.

Presentation is loading. Please wait.

Realizzare Sistemi Multi- Agente con JADE - Seconda Parte - Corso di Reti di Calcolatori A.A. 2004-2005 Ing. Domenico Rosaci.

Similar presentations


Presentation on theme: "Realizzare Sistemi Multi- Agente con JADE - Seconda Parte - Corso di Reti di Calcolatori A.A. 2004-2005 Ing. Domenico Rosaci."— Presentation transcript:

1 Realizzare Sistemi Multi- Agente con JADE - Seconda Parte - Corso di Reti di Calcolatori A.A Ing. Domenico Rosaci

2 Lambiente JBuilder

3 Il componente jPanel

4 Il componente jDBText

5 Il componente jButton

6 jButton: il metodo actionPerformed

7 Dentro actionPerformed // Button Registrati per aprire il pannello di registrazione // Button Registrati per aprire il pannello di registrazione void jButtonRegistrati_actionPerformed(ActionEvent e) { void jButtonRegistrati_actionPerformed(ActionEvent e) { jDbTextUserName.setText(""); jDbTextUserName.setText(""); jPasswordField.setText(""); jPasswordField.setText(""); cardLayout2.show(jPanelRegistrati,"jPanelRegistraDati"); cardLayout2.show(jPanelRegistrati,"jPanelRegistraDati"); } }

8 jPanel Registra Dati

9 Entriamo del pulsante OK void jButtonInsertRegistrazione_actionPerformed(ActionEvent e) { void jButtonInsertRegistrazione_actionPerformed(ActionEvent e) { String Cognome = jdbTextFieldCognome.getText(); String Cognome = jdbTextFieldCognome.getText(); String Nome = jdbTextFieldNome.getText(); String Nome = jdbTextFieldNome.getText(); String Cdl = jdbTextFieldCdl.getText(); String Cdl = jdbTextFieldCdl.getText(); String UserName = jdbTextFieldUserName.getText(); String UserName = jdbTextFieldUserName.getText(); String Password = jPasswordFieldRegistra.getText(); String Password = jPasswordFieldRegistra.getText(); parameterRowControllaRegistrazione.setString("Username", UserName); parameterRowControllaRegistrazione.setString("Username", UserName); queryDataSetParametriCorretti.executeQuery(); queryDataSetParametriCorretti.executeQuery(); // UserName e Password diversi da quelli già presenti nel database // UserName e Password diversi da quelli già presenti nel database if (queryDataSetParametriCorretti.isEmpty()){ if (queryDataSetParametriCorretti.isEmpty()){ parameterRowRegistrazione.setString("Cognome", Cognome); parameterRowRegistrazione.setString("Cognome", Cognome); parameterRowRegistrazione.setString("Nome", Nome); parameterRowRegistrazione.setString("Nome", Nome); parameterRowRegistrazione.setString("CorsodiLaurea", Cdl); parameterRowRegistrazione.setString("CorsodiLaurea", Cdl); parameterRowRegistrazione.setString("Username", UserName); parameterRowRegistrazione.setString("Username", UserName); parameterRowRegistrazione.setString("Password", Password); parameterRowRegistrazione.setString("Password", Password); try{ try{ queryDataSetRegistrazione.executeQuery(); queryDataSetRegistrazione.executeQuery(); } } catch (DataSetException ex) { catch (DataSetException ex) { } } jDbTextUserName.setText(UserName); jDbTextUserName.setText(UserName); jPasswordField.setText(Password); jPasswordField.setText(Password); cardLayout2.show(jPanelRegistrati,"jPanel8"); cardLayout2.show(jPanelRegistrati,"jPanel8"); jButtonRegistrati.setEnabled(false); jButtonRegistrati.setEnabled(false); } } else{ else{ DialogMsg Msg = new DialogMsg(); DialogMsg Msg = new DialogMsg(); String Message="Attenzione. Username non utilizzabile"; String Message="Attenzione. Username non utilizzabile"; Msg.SetMsg(Message); Msg.SetMsg(Message); Msg.Visible(); Msg.Visible(); } }

10 Eseguire una query su un database

11 La parameter row

12 Il DBMS jDataStore

13 Il collegamento remoto

14 La query per la registrazione

15 Il bottone Entra // Button Entra controlli su username e password // Button Entra controlli su username e password void jButtonEntra_actionPerformed(ActionEvent e) { void jButtonEntra_actionPerformed(ActionEvent e) { UserName = jDbTextUserName.getText(); UserName = jDbTextUserName.getText(); Password = jPasswordField.getText(); Password = jPasswordField.getText(); if (UserName.length()!=0 && Password.length()!=0){ if (UserName.length()!=0 && Password.length()!=0){ parameterRowControllaRegistrazione.setString("Username", UserName); parameterRowControllaRegistrazione.setString("Username", UserName); parameterRowControllaRegistrazione.setString("Password", Password); parameterRowControllaRegistrazione.setString("Password", Password); // controlla se username e password sono corretti // controlla se username e password sono corretti queryDataSetControllaRegistrazione.executeQuery(); queryDataSetControllaRegistrazione.executeQuery(); if (!queryDataSetControllaRegistrazione.isEmpty()){ if (!queryDataSetControllaRegistrazione.isEmpty()){ cardLayout1.show(contentPane,"jTabbedPane1"); cardLayout1.show(contentPane,"jTabbedPane1"); jLabelNomeUtente.setText("Nick Name: "+UserName); jLabelNomeUtente.setText("Nick Name: "+UserName); parameterRowMostraAppunti.setString("username",UserName); parameterRowMostraAppunti.setString("username",UserName); queryDataSetMostraAppunti.executeQuery(); queryDataSetMostraAppunti.executeQuery(); Agente = new ClientAgent(UserName,this); Agente = new ClientAgent(UserName,this); Entrato=true; Entrato=true; } } else{ else{ DialogMsg Msg = new DialogMsg(); DialogMsg Msg = new DialogMsg(); String Message="Username e Password non riconosciuti. Se non sei registrato fallo ora!!"; String Message="Username e Password non riconosciuti. Se non sei registrato fallo ora!!"; Msg.SetMsg(Message); Msg.SetMsg(Message); Msg.Visible(); Msg.Visible(); jButtonRegistrati.setEnabled(true); jButtonRegistrati.setEnabled(true); } } else{ else{ DialogMsg Msg = new DialogMsg(); DialogMsg Msg = new DialogMsg(); String Message="Attenzione devi immettere username e password"; String Message="Attenzione devi immettere username e password"; Msg.SetMsg(Message); Msg.SetMsg(Message); Msg.Visible(); Msg.Visible(); } }

16 Mostrare gli appunti

17 Il bottone Sfoglia void jButtonSfoglia_actionPerformed(ActionEvent e) { void jButtonSfoglia_actionPerformed(ActionEvent e) { if (JFileChooser.APPROVE_OPTION == jFileChooser1.showOpenDialog(this)) { if (JFileChooser.APPROVE_OPTION == jFileChooser1.showOpenDialog(this)) { nome = jFileChooser1.getSelectedFile().getName(); nome = jFileChooser1.getSelectedFile().getName(); percorso = jFileChooser1.getSelectedFile().getPath(); percorso = jFileChooser1.getSelectedFile().getPath(); int lunghezza = nome.length(); int lunghezza = nome.length(); int suffisso = 4; int suffisso = 4; int prefisso = lunghezza-suffisso; int prefisso = lunghezza-suffisso; nomefile = nome.substring(0,prefisso); nomefile = nome.substring(0,prefisso); estensione = nome.substring(prefisso+1,lunghezza); estensione = nome.substring(prefisso+1,lunghezza); // Display the name of the opened directory+file in the TextField. // Display the name of the opened directory+file in the TextField. jdbTextFieldPathAppunto.setText(jFileChooser1.getSelectedFile().getPath()); jdbTextFieldPathAppunto.setText(jFileChooser1.getSelectedFile().getPath()); // Code will need to go here to actually load text // Code will need to go here to actually load text // from file into TextArea. // from file into TextArea. } }

18 Il bottone Share // Condivide l'appunto inserendolo nel database remoto // Condivide l'appunto inserendolo nel database remoto void jButtonShare_actionPerformed(ActionEvent e) { void jButtonShare_actionPerformed(ActionEvent e) { try { try { // change the values in the parameter row // change the values in the parameter row // and refresh the display // and refresh the display parameterRowRemoto.setString("percorso",percorso); parameterRowRemoto.setString("percorso",percorso); parameterRowRemoto.setString("file", nome); parameterRowRemoto.setString("file", nome); parameterRowRemoto.setString("titolo",nomefile); parameterRowRemoto.setString("titolo",nomefile); parameterRowRemoto.setString("formato",estensione); parameterRowRemoto.setString("formato",estensione); parameterRowRemoto.setString("dimensioni",jdbTextFieldDimensioneFile.getText()); parameterRowRemoto.setString("dimensioni",jdbTextFieldDimensioneFile.getText()); parameterRowRemoto.setString("pagine",jdbTextFieldPagineFile.getText()); parameterRowRemoto.setString("pagine",jdbTextFieldPagineFile.getText()); parameterRowRemoto.setString("materia",jdbTextFieldMateria.getText()); parameterRowRemoto.setString("materia",jdbTextFieldMateria.getText()); parameterRowRemoto.setString("settore",jdbTextFieldSSD.getText()); parameterRowRemoto.setString("settore",jdbTextFieldSSD.getText()); parameterRowRemoto.setString("annoacc",jdbTextFieldAnno.getText()); parameterRowRemoto.setString("annoacc",jdbTextFieldAnno.getText()); parameterRowRemoto.setString("username",UserName); parameterRowRemoto.setString("username",UserName); queryDataSetInsertRemoto.executeQuery(); queryDataSetInsertRemoto.executeQuery(); } } catch (DataSetException ex) { catch (DataSetException ex) { } } try{ try{ parameterRowMostraAppunti.setString("username",UserName); parameterRowMostraAppunti.setString("username",UserName); queryDataSetMostraAppunti.executeQuery(); queryDataSetMostraAppunti.executeQuery(); } } catch (DataSetException ex) { catch (DataSetException ex) { ex.printStackTrace(); } ex.printStackTrace(); } jdbTextFieldPathAppunto.setText(""); jdbTextFieldPathAppunto.setText(""); jdbTextFieldDimensioneFile.setText(""); jdbTextFieldDimensioneFile.setText(""); jdbTextFieldPagineFile.setText(""); jdbTextFieldPagineFile.setText(""); jdbTextFieldMateria.setText(""); jdbTextFieldMateria.setText(""); jdbTextFieldSSD.setText(""); jdbTextFieldSSD.setText(""); jdbTextFieldAnno.setText(""); jdbTextFieldAnno.setText(""); } }

19 queryDataSetInsertRemoto

20 La chat

21 Il bottone utenti on line // Button CercaAgenti Cerca gli agenti attivi // Button CercaAgenti Cerca gli agenti attivi void jButtonCercaAgenti_actionPerformed(ActionEvent e) { void jButtonCercaAgenti_actionPerformed(ActionEvent e) { FillAgentComboBox(); FillAgentComboBox(); } }

22 Il metodo FillAgentComboBox() // Riempie il comboBox degli agenti attivi // Riempie il comboBox degli agenti attivi void FillAgentComboBox(){ void FillAgentComboBox(){ String [][] Lista = Agente.searchAgents(); String [][] Lista = Agente.searchAgents(); jComboBoxCercaAgenti.removeAllItems(); jComboBoxCercaAgenti.removeAllItems(); for (int i=0; i

23 Agente.searchAgents() // Ricerca agenti attivi presso il DF // Ricerca agenti attivi presso il DF public String [][] searchAgents() { public String [][] searchAgents() { DFAgentDescription dfd = new DFAgentDescription(); DFAgentDescription dfd = new DFAgentDescription(); ServiceDescription sd = new ServiceDescription(); ServiceDescription sd = new ServiceDescription(); AID DfName=getDefaultDF(); AID DfName=getDefaultDF(); try { try { DFAgentDescription[] result = DFService.search(this, DfName, dfd); DFAgentDescription[] result = DFService.search(this, DfName, dfd); String [][] out= new String [result.length] [2]; String [][] out= new String [result.length] [2]; for (int i=0; i


Download ppt "Realizzare Sistemi Multi- Agente con JADE - Seconda Parte - Corso di Reti di Calcolatori A.A. 2004-2005 Ing. Domenico Rosaci."

Similar presentations


Ads by Google