Das letzte "große" Modul der static blog engine ist workbench.py. Die darin
enthaltene Klasse Workbench könnte man als die Ablaufsteuerung der sbe
bezeichen. Sie ruft nach bedarf die einzelnen vorgestellten Module bzw. Klassen
auf und ist für die Ausgabe der statischen HTML-Seiten sowie der Atom-XML-Datei
zuständig.
Die wichtigsten Methoden sind dabei:
update():
Sucht nach neuen und geänderten Artikeln und gibt diese ausrebuild_lastest_year():
erneute Ausgabe aller Artikel des zuletzt angelegten Jahresrebuild_year(year_as_string):
erneute Ausgabe eines bestimmten JahresIn jeder dieser Methoden wird zuerst ein Inventar erstellt, die betroffenen
Artikel gesucht und zwischengespeichert. Durch den Aufruf von deploy() wird
zunächst ein RenderingSet erstellt und alle darin enthaltenden
Elemente als HTML ausgegeben. Zur Ausgabe als HTML zählt natürlich auch das
Kopieren verknüpfter Dateien.
Bei Aufruf der Methode update wird im zusätzlich noch die Index-Datei
ausgegeben, der Atom-Feed neu aufgebaut und die Tag-Seiten aktualisiert. Daher
sind die Methoden rebuild_lastest_year und rebuild_year dazu gedacht
Änderungen an einem Template anzuwenden.
Für die Tag-Seiten gibt es noch besondere Methoden, um diese bei Fehlern oder
ähnlichem zu aktualisieren: rebuild_tags_of_latest_year(),
rebuild_tags_of_year(year_as_string) und rebuild_all_tags() die eigentlich
selbsterklärend sein sollten.
Als Todo steht eigentlich noch an, dass ich die Tag-Verwaltung in ein eigenes Modul auslagern wollte, ich mich aber noch nicht dazu aufraffen konnte. Mahl sehen.