SMom.MsgManager
Class CLocalManager

java.lang.Object
  |
  +--SMom.MsgManager.CLocalManager
All Implemented Interfaces:
IMsgManager

public class CLocalManager
extends java.lang.Object
implements IMsgManager

Manager utilizzabile all'interno di una singola applicazione per inviare messaggi ad oggetti locali.

Questo semplice MsgManager suppone che tutti i messaggi da inviare vengano spediti a un Manager locale (anche il manager stesso). Se il messaggio è indirizzato allo stesso Manager, notifica il Dispatcher collegato che provvederà ad inoltrare i messaggi agli oggetti locali destinatari; se, al contrario, il destinatario è un altro manager locale, esegue una Send dello stesso messaggio al destinatario.

Version:
0.1 - Settembre 2004
Author:
Giorgio Bernardi.
E-Mail: Giorgio.Bernardi@studio.unibo.it

Constructor Summary
CLocalManager()
          Crea un nuovo manager locale con indirizzo predefinito univoco
 
Method Summary
 java.lang.String getAddress()
          Indirizzo logico del manager.
 IDispatcher getDispatcher()
          Identificativo dell'oggetto che si occuperà di indirizzare i messaggi ai destinatari
 int getKnownManagerNumber()
          Indica il numero di manager conosciuti.
 int IsRegistered(CLocalManager OtherManager)
          Consente di sapere se un Manager è registrato.
 boolean Register(CLocalManager OtherManager)
          Funzione che permette di registrare un ulteriore Manager locale per la notifica di messaggi.
 boolean Send(CEnvelope Env, java.lang.String MngAddress)
          La funzione ignora il MngAddress Restituisce False se il manager non è nell'elenco dei manager registrati.
protected  boolean SendToYou(CEnvelope Env)
          Funzione chiamata dagli altri manager locali indicando che il messaggio è per me
 void setDispatcher(IDispatcher dsptchr)
          Identificativo dell'oggetto che si occuperà di indirizzare i messaggi ai destinatari
 boolean UnRegister(CLocalManager OtherManager)
          Funzione che permette ad un possibile destinatario di messaggi, precedentemente registratosi, di deregistrarsi presso il dispatcher Se il manager non risulta registrato la funzione restituirà comunque true.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CLocalManager

public CLocalManager()
Crea un nuovo manager locale con indirizzo predefinito univoco

Method Detail

getDispatcher

public IDispatcher getDispatcher()
Identificativo dell'oggetto che si occuperà di indirizzare i messaggi ai destinatari

Specified by:
getDispatcher in interface IMsgManager

setDispatcher

public void setDispatcher(IDispatcher dsptchr)
Identificativo dell'oggetto che si occuperà di indirizzare i messaggi ai destinatari

Specified by:
setDispatcher in interface IMsgManager

getAddress

public java.lang.String getAddress()
Indirizzo logico del manager. Identifica il manager specificandolo in maniera univoca L'indirizzo viene generato automaticamente alla creazione dell'oggetto.

Specified by:
getAddress in interface IMsgManager

Send

public boolean Send(CEnvelope Env,
                    java.lang.String MngAddress)
La funzione ignora il MngAddress Restituisce False se il manager non è nell'elenco dei manager registrati. Se il manager destinazione è vuoto o è l'oggetto stesso, restituisce False se il Dispatcher non è stato specificato.

Specified by:
Send in interface IMsgManager

SendToYou

protected boolean SendToYou(CEnvelope Env)
Funzione chiamata dagli altri manager locali indicando che il messaggio è per me


getKnownManagerNumber

public int getKnownManagerNumber()
Indica il numero di manager conosciuti.

Specified by:
getKnownManagerNumber in interface IMsgManager

Register

public boolean Register(CLocalManager OtherManager)
Funzione che permette di registrare un ulteriore Manager locale per la notifica di messaggi. Se il manager è già registrato non verrà aggiunto ma la funzione restituirà comunque true.


UnRegister

public boolean UnRegister(CLocalManager OtherManager)
Funzione che permette ad un possibile destinatario di messaggi, precedentemente registratosi, di deregistrarsi presso il dispatcher Se il manager non risulta registrato la funzione restituirà comunque true.


IsRegistered

public int IsRegistered(CLocalManager OtherManager)
Consente di sapere se un Manager è registrato. Restituisce 0 se il manager non è registrato, un numero maggiore di 0 in caso contrario



Copyright © 2004 Giorgio Bernardi. All Rights Reserved.