Riferimenti per la classe ServerMidlet

Diagramma delle classi per ServerMidlet

Inheritance graph
[legenda]
Diagramma di collaborazione per ServerMidlet:

Collaboration graph
[legenda]
Lista di tutti i membri.

Descrizione Dettagliata

Autore:
Antonio

Definizione alla linea 22 del file ServerMidlet.java.

Membri pubblici

 ServerMidlet ()
 Creates a new instance of ServerMidlet.
void commandAction (javax.microedition.lcdui.Command command, javax.microedition.lcdui.Displayable displayable)
 Called by the system to indicate that a command has been invoked on a particular displayable.
void startApp ()
void pauseApp ()
void destroyApp (boolean unconditional)
void connectionAdded (StreamConnection conn)
void connectionRemoved (StreamConnection conn)

Attributi con visibilità di package

javax.microedition.lcdui.Alert initAlert
javax.microedition.lcdui.Command exitCommand1
javax.microedition.lcdui.Ticker ticker1
javax.microedition.lcdui.Alert alertSplashScreen
javax.microedition.lcdui.Image logo
javax.microedition.lcdui.List connectedDevice
javax.microedition.lcdui.Command Disconnect
javax.microedition.lcdui.Command info
javax.microedition.lcdui.Alert deviceInfo
javax.microedition.lcdui.Ticker tickerConnectedDevice

Membri privati

void initialize ()
 This method initializes UI of the application.
javax.microedition.lcdui.Alert get_initAlert ()
 This method returns instance for initAlert component and should be called instead of accessing initAlert field directly.
javax.microedition.lcdui.Command get_exitCommand1 ()
 This method returns instance for exitCommand1 component and should be called instead of accessing exitCommand1 field directly.
javax.microedition.lcdui.Ticker get_ticker1 ()
 This method returns instance for ticker1 component and should be called instead of accessing ticker1 field directly.
javax.microedition.lcdui.Alert get_alertSplashScreen ()
 This method returns instance for alertSplashScreen component and should be called instead of accessing alertSplashScreen field directly.
javax.microedition.lcdui.Image get_logo ()
 This method returns instance for logo component and should be called instead of accessing logo field directly.
javax.microedition.lcdui.List get_connectedDevice ()
 This method returns instance for connectedDevice component and should be called instead of accessing connectedDevice field directly.
javax.microedition.lcdui.Command get_Disconnect ()
 This method returns instance for Disconnect component and should be called instead of accessing Disconnect field directly.
javax.microedition.lcdui.Command get_info ()
 This method returns instance for info component and should be called instead of accessing info field directly.
javax.microedition.lcdui.Alert get_deviceInfo ()
 This method returns instance for deviceInfo component and should be called instead of accessing deviceInfo field directly.
javax.microedition.lcdui.Ticker get_tickerConnectedDevice ()
 This method returns instance for tickerConnectedDevice component and should be called instead of accessing tickerConnectedDevice field directly.

Attributi privati

StringBuffer url
BtServer btServer
String serviceURL = "http://192.168.1.11:8080/JAEBI/JAEBIWS"
Vector connected
Vector connections
Vector connectionProcessors
 Vector di ConnectionProcessor.

Attributi privati statici

static final UUID JAEBI_MIDLET_UUID = new UUID(0x12345)


Documentazione dei costruttori e dei distruttori

ServerMidlet.ServerMidlet  ) 
 

Creates a new instance of ServerMidlet.

Definizione alla linea 59 del file ServerMidlet.java.

Riferimenti JAEBI_MIDLET_UUID, e url.

00059                           {
00060         
00061             /*
00062              *******************************************************************
00063              * costruisco la stringa contenete l'url del server e che verrà
00064              * passata al costruttore di BtServer
00065              *******************************************************************
00066              */
00067         
00068         //usiamo il profilo serial Port Profile per le connessioni
00069         url = new StringBuffer("btspp://");
00070         
00071         // indico nell'url che si tratta di un server
00072         url.append("localhost").append(':');
00073         
00074         // aggiungo l'UUID per identificare il servizio
00075         url.append(JAEBI_MIDLET_UUID.toString());
00076         
00077         // Aggiungo il nome per il nostro servizio
00078         url.append(";name=Midlet_Server");
00079         
00080         // richiedo che i client siano autorizzati
00081         //TODO in che senso autorizzati!?!?
00082         url.append(";authorize=true");
00083         
00084         //TODO debug
00085         System.out.println("UUID=" + JAEBI_MIDLET_UUID.toString());
00086         
00087         this.connected = new Vector();
00088         this.connections = new Vector();
00089         this.connectionProcessors = new Vector();
00090         
00091     }


Documentazione delle funzioni membro

void ServerMidlet.commandAction javax.microedition.lcdui.Command  command,
javax.microedition.lcdui.Displayable  displayable
 

Called by the system to indicate that a command has been invoked on a particular displayable.

Parametri:
command the Command that ws invoked
displayable the Displayable on which the command was invoked

Definizione alla linea 107 del file ServerMidlet.java.

Riferimenti connectedDevice, destroyApp(), exitCommand1, get_connectedDevice(), get_deviceInfo(), info, e initAlert.

00107                                                                                                                           {
00108         if (displayable == connectedDevice) {
00109             if (command == info) {
00110 // For adding user code into this block, select "Design | Screens | connectedDevice [List] | Assigned Commands | info" item in the inspector and invoke property editor on Action property in Properties window.
00111                 javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_deviceInfo(), get_connectedDevice());
00112             }
00113         } else if (displayable == initAlert) {
00114             if (command == exitCommand1) {
00115 // For adding user code into this block, select "Design | Screens | initAlert [Alert] | Assigned Commands | exitCommand1" item in the inspector and invoke property editor on Action property in Properties window.
00116                 javax.microedition.lcdui.Display.getDisplay(this).setCurrent(null);
00117                 destroyApp(true);
00118                 notifyDestroyed();
00119             }
00120         }
00121     }

Questo è il grafo delle chiamate per questa funzione:

void ServerMidlet.connectionAdded StreamConnection  conn  ) 
 

recupero il friendly name (o il suo indirizzo) della device che si è collegata

Implementa org.jaebi.midlet.bt.ConnectionEventHandler.

Definizione alla linea 278 del file ServerMidlet.java.

Riferimenti btServer, connected, connectionProcessors, connections, get_connectedDevice(), get_tickerConnectedDevice(), org.jaebi.midlet.bt.BtServer.removeConnection(), e serviceURL.

00278                                                       {
00282         String nameOrAddress;
00283         RemoteDevice rd = null;
00284         ConnectionProcessor cp = null;
00285         
00286         try{
00287             rd = RemoteDevice.getRemoteDevice(conn);
00288         } catch (IOException  ex){
00289             
00290             /*
00291              * qualcosa non va: non riesco a recuperare l'handle alla
00292              * RemoteDevice cui si riferisce la connessione. Rimuovo il
00293              * riferimento alla connessione in bTServer e non faccio nient'altro
00294              */
00295             btServer.removeConnection(conn);
00296             return;
00297         }
00298         
00299         try{
00300             nameOrAddress = rd.getFriendlyName(true);
00301         } catch(IOException e){
00302             nameOrAddress = rd.getBluetoothAddress();
00303         }
00304         
00305         /*
00306          * Aggiorno il componente List connectedDevice
00307          */
00308         get_connectedDevice().append(nameOrAddress, null);
00309         
00310         /*
00311          * aggiungo in connected l'handle alla remotedevice connessa
00312          */
00313         connected.addElement(rd);
00314         
00315         /*
00316          * aggiungo l'handle alla connessione a connections
00317          */
00318         connections.addElement(conn);
00319         
00320         /*
00321          * faccio partire il thread di gestione della connessione
00322          */
00323        cp = new ConnectionProcessor(conn, this.btServer, this.serviceURL);
00324         
00325         /*
00326          * aggiungo l'handle all'istanza di ConnectionProcessor a connectionProcessors
00327          */
00328         connectionProcessors.addElement(cp);
00329         
00330         get_tickerConnectedDevice().setString("Al momento ci sono " + connections.size() + "connessioni attive");
00331     }

Questo è il grafo delle chiamate per questa funzione:

void ServerMidlet.connectionRemoved StreamConnection  conn  ) 
 

Implementa org.jaebi.midlet.bt.ConnectionEventHandler.

Definizione alla linea 334 del file ServerMidlet.java.

Riferimenti connected, connectionProcessors, connections, e get_tickerConnectedDevice().

00334                                                         {
00335         
00336         //recupero l'indice della connessione in connections
00337         int index = connections.indexOf(conn);
00338         
00339         /*
00340          * Verifico se è necessario aggiornare conneced, connections e
00341          * connectionProcessors (potrebbe non esserlo a causa del primo
00342          * try..catch all'interno del metodo connectionAdded()
00343          */
00344         if (index != -1){
00345             
00346             //rimuovo la connessione da connections
00347             connections.removeElementAt(index);
00348             
00349             /* rimuovo da connectionProcessors l'istanza di ConnecionProcessor che
00350              * gestiva la connessione rimossa
00351              */
00352             connectionProcessors.removeElementAt(index);
00353             
00354             /*
00355              * rimuovo da connected l'handle alla RemoteDevice relativa alla
00356              * connessione rimossa
00357              */
00358             connected.removeElementAt(index);
00359         }
00360         
00361         get_tickerConnectedDevice().setString("Al momento ci sono " + connections.size() + "connessioni attive");
00362     }

Questo è il grafo delle chiamate per questa funzione:

void ServerMidlet.destroyApp boolean  unconditional  ) 
 

Definizione alla linea 273 del file ServerMidlet.java.

Referenziato da commandAction().

00273                                                   {
00274         //TODO in questo metodo devono essere distrutte tutte le connessioni del listner
00275     }

javax.microedition.lcdui.Alert ServerMidlet.get_alertSplashScreen  )  [private]
 

This method returns instance for alertSplashScreen component and should be called instead of accessing alertSplashScreen field directly.

Restituisce:
Instance for alertSplashScreen component

Definizione alla linea 163 del file ServerMidlet.java.

Riferimenti alertSplashScreen, btServer, get_connectedDevice(), get_initAlert(), get_logo(), e url.

Referenziato da initialize().

00163                                                                    {
00164         if (alertSplashScreen == null) {
00165             alertSplashScreen = new javax.microedition.lcdui.Alert(null, "", get_logo(), javax.microedition.lcdui.AlertType.INFO);
00166             alertSplashScreen.setTimeout(3000);
00167             try{
00168                 btServer = new BtServer(this.url, this);
00169             }catch(BtInitException e){
00170                 javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_initAlert());
00171                 e.printStackTrace();
00172             }
00173             javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_connectedDevice());
00174         }
00175         return alertSplashScreen;
00176     }

Questo è il grafo delle chiamate per questa funzione:

javax.microedition.lcdui.List ServerMidlet.get_connectedDevice  )  [private]
 

This method returns instance for connectedDevice component and should be called instead of accessing connectedDevice field directly.

Restituisce:
Instance for connectedDevice component

Definizione alla linea 196 del file ServerMidlet.java.

Riferimenti connectedDevice, get_Disconnect(), get_info(), e get_tickerConnectedDevice().

Referenziato da commandAction(), connectionAdded(), e get_alertSplashScreen().

00196                                                                 {
00197         if (connectedDevice == null) {
00198             connectedDevice = new javax.microedition.lcdui.List(null, javax.microedition.lcdui.Choice.IMPLICIT, new java.lang.String[0], new javax.microedition.lcdui.Image[0]);
00199             connectedDevice.addCommand(get_Disconnect());
00200             connectedDevice.addCommand(get_info());
00201             connectedDevice.setCommandListener(this);
00202             connectedDevice.setTicker(get_tickerConnectedDevice());
00203             connectedDevice.setSelectedFlags(new boolean[0]);
00204             connectedDevice.setSelectCommand(get_Disconnect());
00205         }
00206         return connectedDevice;
00207     }

Questo è il grafo delle chiamate per questa funzione:

javax.microedition.lcdui.Alert ServerMidlet.get_deviceInfo  )  [private]
 

This method returns instance for deviceInfo component and should be called instead of accessing deviceInfo field directly.

Restituisce:
Instance for deviceInfo component

Definizione alla linea 235 del file ServerMidlet.java.

Riferimenti deviceInfo.

Referenziato da commandAction().

00235                                                             {
00236         if (deviceInfo == null) {
00237             deviceInfo = new javax.microedition.lcdui.Alert(null, "<Enter Text>", null, javax.microedition.lcdui.AlertType.INFO);
00238             deviceInfo.setTimeout(-2);
00239         }
00240         return deviceInfo;
00241     }

javax.microedition.lcdui.Command ServerMidlet.get_Disconnect  )  [private]
 

This method returns instance for Disconnect component and should be called instead of accessing Disconnect field directly.

Restituisce:
Instance for Disconnect component

Definizione alla linea 213 del file ServerMidlet.java.

Riferimenti Disconnect.

Referenziato da get_connectedDevice().

00213                                                               {
00214         if (Disconnect == null) {
00215             Disconnect = new javax.microedition.lcdui.Command("Disconnect", javax.microedition.lcdui.Command.ITEM, 1);
00216         }
00217         return Disconnect;
00218     }

javax.microedition.lcdui.Command ServerMidlet.get_exitCommand1  )  [private]
 

This method returns instance for exitCommand1 component and should be called instead of accessing exitCommand1 field directly.

Restituisce:
Instance for exitCommand1 component

Definizione alla linea 141 del file ServerMidlet.java.

Riferimenti exitCommand1.

Referenziato da get_initAlert().

00141                                                                 {
00142         if (exitCommand1 == null) {
00143             exitCommand1 = new javax.microedition.lcdui.Command("Exit", javax.microedition.lcdui.Command.EXIT, 1);
00144         }
00145         return exitCommand1;
00146     }

javax.microedition.lcdui.Command ServerMidlet.get_info  )  [private]
 

This method returns instance for info component and should be called instead of accessing info field directly.

Restituisce:
Instance for info component

Definizione alla linea 224 del file ServerMidlet.java.

Riferimenti info.

Referenziato da get_connectedDevice().

00224                                                         {
00225         if (info == null) {
00226             info = new javax.microedition.lcdui.Command("Info", javax.microedition.lcdui.Command.SCREEN, 1);
00227         }
00228         return info;
00229     }

javax.microedition.lcdui.Alert ServerMidlet.get_initAlert  )  [private]
 

This method returns instance for initAlert component and should be called instead of accessing initAlert field directly.

Restituisce:
Instance for initAlert component

Definizione alla linea 127 del file ServerMidlet.java.

Riferimenti get_exitCommand1(), e initAlert.

Referenziato da get_alertSplashScreen().

00127                                                            {
00128         if (initAlert == null) {
00129             initAlert = new javax.microedition.lcdui.Alert(null, "Si \u00E8 verificato un errore durante l\'inizializzazione della periferica bluetooth", null, javax.microedition.lcdui.AlertType.INFO);
00130             initAlert.addCommand(get_exitCommand1());
00131             initAlert.setCommandListener(this);
00132             initAlert.setTimeout(-2);
00133         }
00134         return initAlert;
00135     }

Questo è il grafo delle chiamate per questa funzione:

javax.microedition.lcdui.Image ServerMidlet.get_logo  )  [private]
 

This method returns instance for logo component and should be called instead of accessing logo field directly.

Restituisce:
Instance for logo component

Definizione alla linea 182 del file ServerMidlet.java.

Riferimenti logo.

Referenziato da get_alertSplashScreen().

00182                                                       {
00183         if (logo == null) {
00184             try {
00185                 logo = javax.microedition.lcdui.Image.createImage("/images/jaebi LogoFinal.jpg");
00186             } catch (java.io.IOException exception) {
00187             }
00188         }
00189         return logo;
00190     }

javax.microedition.lcdui.Ticker ServerMidlet.get_ticker1  )  [private]
 

This method returns instance for ticker1 component and should be called instead of accessing ticker1 field directly.

Restituisce:
Instance for ticker1 component

Definizione alla linea 152 del file ServerMidlet.java.

Riferimenti ticker1.

00152                                                           {
00153         if (ticker1 == null) {
00154             ticker1 = new javax.microedition.lcdui.Ticker("In attesa di connesioni da parte di altre device");
00155         }
00156         return ticker1;
00157     }

javax.microedition.lcdui.Ticker ServerMidlet.get_tickerConnectedDevice  )  [private]
 

This method returns instance for tickerConnectedDevice component and should be called instead of accessing tickerConnectedDevice field directly.

Restituisce:
Instance for tickerConnectedDevice component

Definizione alla linea 247 del file ServerMidlet.java.

Riferimenti tickerConnectedDevice.

Referenziato da connectionAdded(), connectionRemoved(), e get_connectedDevice().

00247                                                                         {
00248         if (tickerConnectedDevice == null) {
00249             tickerConnectedDevice = new javax.microedition.lcdui.Ticker("Al momento ci sono 0 connessioni attive");
00250         }
00251         return tickerConnectedDevice;
00252     }

void ServerMidlet.initialize  )  [private]
 

This method initializes UI of the application.

Definizione alla linea 97 del file ServerMidlet.java.

Riferimenti get_alertSplashScreen().

Referenziato da startApp().

00097                               {
00098 // For adding user code into this block, select "Design" item in the inspector and invoke property editor on Action property in Properties window.
00099         javax.microedition.lcdui.Display.getDisplay(this).setCurrent(get_alertSplashScreen());
00100     }

Questo è il grafo delle chiamate per questa funzione:

void ServerMidlet.pauseApp  ) 
 

Definizione alla linea 270 del file ServerMidlet.java.

00270                            {
00271     }

void ServerMidlet.startApp  ) 
 

Definizione alla linea 266 del file ServerMidlet.java.

Riferimenti initialize().

00266                            {
00267         initialize();
00268     }

Questo è il grafo delle chiamate per questa funzione:


Documentazione dei dati membri

javax.microedition.lcdui.Alert ServerMidlet.alertSplashScreen [package]
 

Definizione alla linea 257 del file ServerMidlet.java.

Referenziato da get_alertSplashScreen().

BtServer ServerMidlet.btServer [private]
 

Definizione alla linea 25 del file ServerMidlet.java.

Referenziato da connectionAdded(), e get_alertSplashScreen().

Vector ServerMidlet.connected [private]
 

Definizione alla linea 38 del file ServerMidlet.java.

Referenziato da connectionAdded(), e connectionRemoved().

javax.microedition.lcdui.List ServerMidlet.connectedDevice [package]
 

Definizione alla linea 259 del file ServerMidlet.java.

Referenziato da commandAction(), e get_connectedDevice().

Vector ServerMidlet.connectionProcessors [private]
 

Vector di ConnectionProcessor.

Contiene gli handle alle istanze di ConnectionProcessor, la classe che si occupa di gestire ogni singola connessione al server. L'istanza di ConnectionProcessor che gestisce la connessione relativa alla remoteDevice x è memorizzata in questo container con lo stesso indice con cui x è memorizzata in connected e con cui la connessione relativa ad x è memorizzata in connections

Definizione alla linea 56 del file ServerMidlet.java.

Referenziato da connectionAdded(), e connectionRemoved().

Vector ServerMidlet.connections [private]
 

Definizione alla linea 46 del file ServerMidlet.java.

Referenziato da connectionAdded(), e connectionRemoved().

javax.microedition.lcdui.Alert ServerMidlet.deviceInfo [package]
 

Definizione alla linea 262 del file ServerMidlet.java.

Referenziato da get_deviceInfo().

javax.microedition.lcdui.Command ServerMidlet.Disconnect [package]
 

Definizione alla linea 260 del file ServerMidlet.java.

Referenziato da get_Disconnect().

javax.microedition.lcdui.Command ServerMidlet.exitCommand1 [package]
 

Definizione alla linea 255 del file ServerMidlet.java.

Referenziato da commandAction(), e get_exitCommand1().

javax.microedition.lcdui.Command ServerMidlet.info [package]
 

Definizione alla linea 261 del file ServerMidlet.java.

Referenziato da commandAction(), e get_info().

javax.microedition.lcdui.Alert ServerMidlet.initAlert [package]
 

Definizione alla linea 254 del file ServerMidlet.java.

Referenziato da commandAction(), e get_initAlert().

final UUID ServerMidlet.JAEBI_MIDLET_UUID = new UUID(0x12345) [static, private]
 

Definizione alla linea 31 del file ServerMidlet.java.

Referenziato da ServerMidlet().

javax.microedition.lcdui.Image ServerMidlet.logo [package]
 

Definizione alla linea 258 del file ServerMidlet.java.

Referenziato da get_logo().

String ServerMidlet.serviceURL = "http://192.168.1.11:8080/JAEBI/JAEBIWS" [private]
 

Definizione alla linea 27 del file ServerMidlet.java.

Referenziato da connectionAdded().

javax.microedition.lcdui.Ticker ServerMidlet.ticker1 [package]
 

Definizione alla linea 256 del file ServerMidlet.java.

Referenziato da get_ticker1().

javax.microedition.lcdui.Ticker ServerMidlet.tickerConnectedDevice [package]
 

Definizione alla linea 263 del file ServerMidlet.java.

Referenziato da get_tickerConnectedDevice().

StringBuffer ServerMidlet.url [private]
 

Definizione alla linea 24 del file ServerMidlet.java.

Referenziato da get_alertSplashScreen(), e ServerMidlet().


La documentazione per questa classe è stata generata a partire dal seguente file:
Generato il Thu Jun 23 00:03:02 2005 per JAEBI - BlueTooth J2ME Midlet Client da  doxygen 1.4.3