Interface CommitHook

All Known Subinterfaces:
PostValidationHook
All Known Implementing Classes:
CompositeHook, EditorHook, EmptyHook, ResetCommitAttributeHook

public interface CommitHook
Extension 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 CommitFailedException for 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:
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull NodeState
    Validates and/or modifies the given content change before it gets persisted.
  • Method Details

    • processCommit

      @NotNull @NotNull NodeState processCommit(NodeState before, NodeState after, CommitInfo info) throws org.apache.jackrabbit.oak.api.CommitFailedException
      Validates and/or modifies the given content change before it gets persisted.
      Parameters:
      before - content tree before the commit
      after - content tree prepared for the commit
      info - metadata associated with this commit
      Returns:
      content tree to be committed
      Throws:
      org.apache.jackrabbit.oak.api.CommitFailedException - if the commit should be rejected