/Users/detro/workspace-nb/JAEBI-SwingClient/src/clientswing/UI/Controller.java

Vai alla documentazione di questo file.
00001 package clientswing.UI;
00002 import clientswing.model.*;
00003 import clientswing.comunicationsystem.*;
00004 import javax.swing.*;
00005 
00006 
00013 public class Controller {
00014 
00016   ComunicationSystem cs;
00018   static Controller instance = new Controller();
00019 
00021   private Controller() {
00022     try{
00023       cs = new ComunicationSystem();
00024     }catch(Exception e){
00025       throw new RuntimeException(e);
00026     }
00027   }
00031   public static Controller getInstance(){
00032     return instance;
00033   }
00035   public void showLogin(){
00036     LoginForm loginForm = new LoginForm();
00037     loginForm.show();
00038   }
00040   public void showQueryForm(){
00041     QueryForm queryForm  = new QueryForm ();
00042     queryForm.show();
00043   }
00045   public void showMessageForm(XResponseMessage xresponseMessage ){
00046    if (xresponseMessage.getMessage().equals("error")==true)
00047 
00048      JOptionPane.showMessageDialog(null, xresponseMessage.getTypeMessage(), xresponseMessage.getMessage(), JOptionPane.WARNING_MESSAGE);
00049      else
00050        JOptionPane.showMessageDialog(null, xresponseMessage.getTypeMessage(), xresponseMessage.getMessage(), JOptionPane.INFORMATION_MESSAGE);
00051 
00052   }
00054   public void showResponseForm(XResponseRowSet rowset ){
00055     ResponseForm responseForm = new ResponseForm(rowset);
00056     responseForm.show();
00057 
00058   }
00062  public void executeLogin( XRequestLogin nickName){
00063 
00064   try {
00065     XResponseMessage resp = (XResponseMessage) cs.execute(nickName);
00066     // se la risposta del WebServer non è di errore dopo la login
00067     //allora visualizza la form dei servizi (QueryForm)
00068     if (!resp.isErrorMessage()) showQueryForm();
00069 
00070   }
00071   catch (Exception ex) {
00072     ex.printStackTrace();
00073   }
00074  }
00078  public String executeLogout() throws Exception{
00079 
00080    String logout= cs.execute();
00081    return logout;
00082 }
00086  public void executeQuery(XRequestQuery xrequestQuery ){
00087   try {
00088     XResponse resp = cs.execute(xrequestQuery);
00089     //visualizza il risultato della query
00090     if (resp instanceof XResponseRowSet) showResponseForm( (XResponseRowSet) resp );
00091     //visualizza il messaggio
00092     if (resp instanceof XResponseMessage) showMessageForm( (XResponseMessage) resp );
00093 
00094 
00095   }
00096   catch (Exception ex) {
00097     ex.printStackTrace();
00098   }
00099   }
00100 
00101 
00102 }

Generato il Wed Jun 22 16:42:58 2005 per JAEBI - Swing Client da  doxygen 1.4.3