- All Known Subinterfaces:
- All Known Implementing Classes:
public interface CommitHookExtension point for validating and modifying content changes. Available commit hooks are called in sequence to process incoming content changes before they get persisted and shared with other clients.
A commit hook can throw a
CommitFailedExceptionfor a particular change to prevent it from being persisted, or it can modify the changes for example to update an in-content index or to add auto-generated content.
Note that instead of implementing this interface directly, most commit editors and validators are better expressed as implementations of the more specific extension interfaces defined in this package.
- See Also:
- The commit hook mechanism
@NotNull @NotNull NodeState processCommit(NodeState before, NodeState after, CommitInfo info) throws CommitFailedExceptionValidates and/or modifies the given content change before it gets persisted.
before- content tree before the commit
after- content tree prepared for the commit
info- metadata associated with this commit
- content tree to be committed
CommitFailedException- if the commit should be rejected