# Architektur
Die Architektur von ELO Flows liefert ein webbasiertes Frontend und ein skalierbares Worker-Modell. Durch die Integration von Apache Karaf stellt ELO Flows außerdem eine Komponentenverwaltung mit Hot-Deployment-Unterstützung an.
# Module
ELO Flows setzt sich aus diversen Modulen zusammen.
Der ELO Flow-Manager und die Registry laufen als Webapp in einem Tomcat (wie die anderen ELO Module auch). Die Worker laufen auf einem Apache Karaf (opens new window).
# ELO Flow-Manager
Der ELO Flow-Manager ist eine zentrale Instanz in ELO Flows. Er ist verantwortlich für das Starten neuer Flows sowie die Ablaufsteuerung.
Der ELO Flow-Manager stellt die Schnittstelle für die Flows-Administration zur Verfügung. Über diese Schnittstelle können Flows angelegt und verwaltet werden. Die Oberfläche kann über die Schnittstelle zudem auf die Informationen der Registry zugreifen.
# Flows-Administration
Die Flows-Administration ist die Oberfläche in der ELO Administration Console. Über diese können Sie Flows verwalten. Die App wird zusammen mit den benötigten Schnittstellen vom ELO Flow-Manager bereitgestellt.
# Worker
Die Worker sind eigenständige Container. In den Workern werden die Komponenten deployed. Zur Lastverteilung können mehr als ein Container parallel benutzt werden.
# Registry
Die Registry ist eine zentrale Instanz von ELO Flows. Die Worker melden sich bei der Registry an und registrieren dort die Komponenten. Die Registry überprüft zudem, ob die Worker erreichbar sind und wird informiert, wenn sich die Komponenten eines Workers ändern.
# ELOix Event-Konnektor (OSGi-Plug-in)
Das ELOix-Plug-in ist dafür verantwortlich ELOix-Events an den Flow Manager weiterzureichen.
Aktuell wird zwischen folgenden Events unterschieden:
- Neuanlage eines SORD
- Aktualisierung eines bestehenden SORD
- Aufruf einer dynamischen Stichwortliste aus einem Formular
# Komponenten
Die Komponenten werden als OSGi-Plug-in entwickelt. Sie stellen Trigger und Dienste zu Verfügung.