Änderungsverfolgung über Revisions-Metadaten
FirstSpirit bietet eine Möglichkeit zur Änderungsverfolgung über die FirstSpirit Access-API an. Über bestimmte API-Funktionen ist der Zugriff auf die Metadaten einer Revision möglich. Die Revisions-Metadaten enthalten Informationen über die Art (Welche Änderungen haben stattgefunden?) und den Umfang (Welche Elemente wurden geändert?) einer Änderung im Projekt. Die Informationen, die über die Metadaten der Revision zur Verfügung gestellt werden, sind sehr feingranular. Bei inhaltlichen Änderungen kann beispielsweise ermittelt werden, welche Eigenschaften eines Elements verändert wurden, z. B. ob der Inhalt in einer bestimmten Redaktionssprache geändert wurde, ob ein Kindelement hinzugefügt oder entfernt wurde oder ob bestimmte Attribute, z. B. die Rechte auf dem entsprechenden Element, geändert wurden.
Über die erweiterten Revisionsinformationen können alle Änderungen, die von einer bestimmten Revision bis zu einer anderen bestimmten Revision, innerhalb eines Projekts stattgefunden haben, ermittelt werden.
Ein Zugriff auf diese Informationen ist über die FirstSpirit Access-API, z. B. per BeanShell-Skript, möglich.
Die nachfolgenden Kapitel stellen verschiedene Methoden vor:
- Revisionen holen: Methoden, um eine oder mehrere Revisionen eines Projekts zu erhalten, die auf Änderungen untersucht werden sollen.
- Änderungen ermitteln: Methoden, um die entsprechenden Änderungsinformationen zu ermitteln. Abhängig vom jeweiligen Änderungstyp stehen dabei unterschiedliche Metadaten-Informationen zur Verfügung.
Zusätzlich werden Beispiele zur Verwendung der Änderungsverfolgung im Projekt beschrieben.
- Zuletzt Veröffentlicht: Das erste Beispiel ermittelt alle Datenbank-Änderungen, die seit der zuletzt veröffentlichten Revision eines Projekts stattgefunden haben.
- Zwischen Revisionen: Das zweite Beispiel ermittelt inhaltliche Änderungen, die zwischen einer zu definierenden Start-Revision und einer zu definierenden End-Revision im Projekt stattgefunden haben.
Bei allen Code-Auszügen in diesem Kapitel handelt es sich um Fragmente, die nicht ausreichen, um das jeweils gesamte Skript zusammenzustellen!