Class CompositeEditorProvider

  • All Implemented Interfaces:
    EditorProvider

    public class CompositeEditorProvider
    extends java.lang.Object
    implements EditorProvider
    Aggregation of a list of editor providers into a single provider.
    • Constructor Detail

      • CompositeEditorProvider

        public CompositeEditorProvider​(EditorProvider... providers)
    • Method Detail

      • compose

        @NotNull
        public static @NotNull EditorProvider compose​(@NotNull
                                                      @NotNull java.util.Collection<? extends EditorProvider> providers)
      • getRootEditor

        @Nullable
        public @Nullable Editor getRootEditor​(NodeState before,
                                              NodeState after,
                                              NodeBuilder builder,
                                              CommitInfo info)
                                       throws CommitFailedException
        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
        Throws:
        CommitFailedException - if processing failed
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object