Class ValidatorProvider

java.lang.Object
org.apache.jackrabbit.oak.spi.commit.ValidatorProvider
All Implemented Interfaces:
EditorProvider

public abstract class ValidatorProvider extends Object implements EditorProvider
Extension point for plugging in different kinds of validation rules for content changes.
See Also:
  • Constructor Details

    • ValidatorProvider

      public ValidatorProvider()
  • Method Details

    • getRootValidator

      @Nullable protected abstract @Nullable Validator getRootValidator(NodeState before, NodeState after, CommitInfo info)
      Returns a validator for checking the changes between the given two root states.
      Parameters:
      before - original root state
      after - modified root state
      info - metadata about this commit
      Returns:
      validator for checking the modifications, or null if this validator is not needed for this commit
    • getRootEditor

      @Nullable public final @Nullable Editor getRootEditor(NodeState before, NodeState after, NodeBuilder builder, CommitInfo info)
      Description copied from interface: EditorProvider
      Returns an editor for processing changes between the given two states. Returns null if the changes don't require processing.

      An implementation of this method should generally not compare the given before and after states, as the caller is expected to compare the states and invoke the respective callback methods on the Editor instance returned by this method. Instead the implementation can use the opportunity for other preparatory work.

      Specified by:
      getRootEditor in interface EditorProvider
      Parameters:
      before - original root state
      after - modified root state
      builder - node builder based on the after state
      info - metadata associated with this commit
      Returns:
      editor for processing the changes, or null