Главная / Техно /

Событийная модель

Событийная модель

В системе реализован паттерн Observer, позволяющий связывать части системы посредством событий. В некотором участке кода создается событие (fire event) с определенными свойствами (имя, набор параметров). В другом месте могут быть установлены listener'ы для данного типа событий - методы, которые должны быть вызваны при возникновении события.

В частности, существуют 6 системных событий, возникающих при соверешении общих операций над объектами (как в админ-интерфейсе, так и во front-end): 

  • onBeforeAdd (перед созданием объекта)
  • onAfterAdd (после создания)
  • onBeforeUpdate (перед обновлением)
  • onAfterUpdate (после обновления)
  • onBeforeDelete (перед удалением)
  • onAfterDelete (после удаления).

При помощи событий можно реализовывать сложные алгоритмы сохранения целостности данных, выполнять служебные процедуры, создавать системы оповещения и т.д. Например, на основе событий add/update/delete можно реализовать систему индексирования данных для полнотекстового поиска.