Projektstruktur ~~~~~~~~~~~~~~~ Yalp besteht aus der zentralen Komponente YalpServer an dem sich verschiedene Plugins registrieren: * InputPlugins: stellen Yalp Medien zur Verfuegung, z.B. Dateisystem, YouTube, ... * OutputPlugins: transferieren Medien in verschiedene Formate, z.B. Streams, zip-Archive, ... * AuthPlugins (optional): dienen zur Authentifizierung von Usern, z.B. Datenbank, OpenLDAP, ... Momentan sind folgende Plugins realisiert: * VlcTelnetOutput: erstellt Streams * PGSQLInput: in einer Datenbank werden Medien welche sich auf einem Filesystem befinden verwaltet * PGSQLAuth: in einer PostGreSQL-Datenbank koennen Benutzer und Passwoerter verwaltet werden Der eYalp-Client unterstuetzt momentan das VlcTelnetOutput- und das PGSQLInput-Plugin. .YALP Systemarchitektur image::img/yalp-concept.png[] <<< Die Yalp-Entwicklung findet derzeit in einem privaten git-Repository statt. Eine aktuelle Kopie des Repositories befindet sich auf der CD-ROM. Die Skripte build-java.sh und build-python.sh dienen zum Kompilieren aller Komponenten. Mit ./build-java.sh doc wird eine Java-Dokumentation fuer die Server-Komponenten erzeugt. Unter doc liegen alle automatisch generierten Dokumentationen sowie unter doc/asciidoc selbsterstelle Dokumentation. In img liegen die Yalp-Logos. In lib liegen die Java-Abhaengigkeiten. Der Source-Code befindet sich in src, die Plugins, sowie diverse Clients sind in Unterordner strukturiert. Der Source-Code zu eYalp befindet sich unter src/Yalp/Clients/EflClient. src/yalp.idl ist die CORBA-Schnittstellen-Definition, ueber die alle Komponenten miteinander kommunizieren. Mit dem Kommando "git log" kann die Projekthistorie eingesehen werden. Mit "git show " wird die Aenderung eines einzelnen Commits angezeigt.