Interfaces entre módulos funcionales
API
Wiring
Gestiona la conexión entre eventos y slots.
Trabaja a nivel de identificadores de variable, no tiene acceso a las varaibles como tal
El wiring define canales que son internos a él. Ningún otro módulo conoce el concepto de canal.
El canal guarda un dato.
Un canal se conecta a otro canal formando estructuras complejas
El wiring debe hacer pesistente la estrucuta de los caneles diseñada con el interfaz de wiring
resultCode createChannel (name) <<User>> resultCode connectSlot (idInstanciaGadget, idSlot, channel) <<User>> resultCode disconnectSlot (idInstanciaGadget, idSlot, channel) <<User>> resultCode registerSlot (idInstanciaGadget, idSlot) <<VarManager>> resultCode connectEvent (idInstanciaGadget, idEvent, channel) <<User>> resultCode disconnectEvent (idInstanciaGadget, idEvent, channel) <<User>> resultCode registerEvent (idInstanciaGadget, idEvent) <<VarManager>> resultCode addInstance (idInstanciaGadget, template) <<OpManager>> resultCode removeInstance (idInstanciaGadget) <<OpManager>> <<async>> resultCode sendEvent (idInstanciaGadget, idEvento, value) <<VarManager>>
VarManager
Gestiona las variables y la persistencia de su valor
Se encarga de notificar a las instancias de gadgets cuando una variable a cambiado su valor
Las varaibles tiene la función de callback asociada a su cambio
resultCode writeSlot (idInstanciaGadget, idSlot, Value) <<Wiring>> void registerVariable (idInstancia, Variable) <<IGadget>> Value get (Variable) <<IGadget>> resultCode set (Variable, Value) <<IGadget>> resultCode setProperty (Variable, Value) <<DragBoard>>
PersistenceEngine?
Persiste y recupera los valores que se deseen guardar mediante un interfaz REST
GET (url) POST (url, value) DELETE (url) UPDATE (url, value)
OpManager?
Evita el acoplamiento entre los módulos Wiring, Showcase y Dragboard
Punto centralizado para proporcionar servicios comunes a los módulos
resultCode addInstance (Gadget) <<Showcase>> resultCode deleteInstance (Gadget) <<Dragboard>>
Showcase
Es la paleta personal de cada usuario
Permite crear una instancia de gadget desde su gadget
resultCode addGadget (url) <<User>> resultCode tagGadget (Gadget, [tag]) <<User>> resultCode deleteGadget (Gadget) <<User>> resultCode repaint () <<User>> resultCode updateGadget (url, Gadget) <<User>> resultCode addInstance (Gadget) <<User>>
Dragboard
Muestra los gadgets cargados en el entorno operacional
Permite moverlos e interactuar con ellos
resultCode setupProperty (Variable, value) <<User>> resultCode repaint () <<User>> resultCode moveInstance (IGadget, Position) <<User>>
Attachments
- interfacesArquitectura.jpg (131.9 kB) -
interfacesArquitectura
, added by macvaz on 09/26/07 11:43:51.

