Änderungen in einer Revision ermitteln
Über die Revisionen können anschließend die Metadaten, mit erweiterten Informationen zu den Änderungen geholt werden:
revision.getMetaData();
Die Metadaten verwalten unterschiedliche Informationen, die abhängig von der Art der jeweiligen Änderung sind. Dabei werden nicht nur sprachabhängige inhaltliche Änderungen eines Elements berücksichtigt, sondern auch strukturelle Änderungen (z. B. Verschieben) oder eine Änderung der Element-Attribute (z. B. Name, Rechtedefinition, usw.).
Änderungstyp ermitteln
Die Änderungen, die in einer Revision stattgefunden haben, können über:
metaData.getOperation();
geholt werden.
Die gelieferte Revisionsoperation (RevisionOperation) liefert beispielsweise Informationen zum Änderungstyp (RevisionOperation.OperationType):
operation.getType();
Dabei stehen für unterschiedliche Projektinhalte unterschiedliche Änderungstypen zur Verfügung.
Für Inhalte vom Typ IDProvider sind folgende Änderungstypen möglich:
- CREATE ein Objekt wurde neu im Projekt angelegt
- MODIFY ein Objekt wurde im Projekt geändert
- MOVE ein Objekt wurde im Projekt verschoben
- DELETE ein Objekt wurde im Projekt gelöscht
- RELEASE ein Objekt wurde im Projekt freigegeben
- SERVER_RELEASE ein Objekt wurde auf dem Server freigegeben
Die entsprechende Revisions-Operation (z. B. ModifyOperation) liefert ein Objekt vom Typ BasicElementInfo mit weiteren Informationen zum betroffenen Objekt zurück (z. B. den UniqueIdentifier).
Für Inhalte vom Typ Entity sind folgende Änderungstypen möglich:
- CONTENT_COMMIT es wurden Datenbank-Inhalte geändert
Die entsprechende Revisions-Operation (z. B. ContentOperation) liefert ein Objekt vom Typ EntityInfo mit weiteren Informationen zu den betroffenen Datensätzen zurück (z. B. die ID des Datensatzes oder die ID des zugehörigen Datenbankschemas).
Geänderte Elemente ermitteln
Abhängig von der jeweiligen Änderungsoperation können weitere Informationen zu den Änderungen abgerufen werden, beispielsweise welche Datensätze innerhalb des Projekts freigegeben wurden (für Operation-Type: CONTENT_COMMIT):
operation.getReleasedEntities();
oder z. B. welche Inhalte neu im Projekt angelegt wurden (für Operation-Type: CREATE):
operation.getCreatedElement()
Weitere Methoden befinden sich in den Beispielen zur Verwendung der Änderungsverfolgung.
Für eine Übersicht aller verfügbaren Methoden siehe Dokumentation zur FirstSpirit Access-API.