Was ist ce.hub.publish?
Der DataChangeBus leitet alle Datenänderungen als Events weiter.
Du kannst Dich als Anwender am Bus anmelden und auf Events reagieren.
Die verfügbaren Event-Typen sind in EventTypes.d.lua beschrieben.
Unterstützte Event-Typen
CompleteReset— vollständiger Neuaufbau aller DatenDataAdded— ein neues Element wurde hinzugefügtDataChanged— ein vorhandenes Element hat sich geändertDataRemoved— ein Element wurde entferntListChanged— eine komplette Liste hat sich geändert
Listener registrieren
Ein Listener muss eine Methode fireEvent(event) besitzen:
local DataChangeBus = require("ce.hub.publish.DataChangeBus")
local myListener = {}
function myListener.fireEvent(event)
if event.type == DataChangeBus.EventTypes.DataChanged then
-- auf Änderung reagieren
end
end
DataChangeBus.addListener(myListener)
Event-Struktur
Jedes Event enthält:
eventCounter— fortlaufende Nummertype— Event-Typ (siehe oben)payload— fachliche Nutzdaten mitceType,keyIdundelementoderlist
Architekturbeschreibung: README_DEV.md