@Override public Editor getRootEditor(NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { if (delegate != null){ return delegate.getRootEditor(before, after, builder, info); } return null; }
@Override public Editor getRootEditor(NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { if (delegate != null) { return delegate.getRootEditor(before, after, builder, info); } return null; }
@Override @Nullable public Editor getRootEditor( NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { List<Editor> list = Lists.newArrayListWithCapacity(providers.size()); for (EditorProvider provider : providers) { Editor editor = provider.getRootEditor(before, after, builder, info); if (editor != null) { list.add(editor); } } return CompositeEditor.compose(list); }
@Override @CheckForNull public Editor getRootEditor( NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { List<Editor> list = Lists.newArrayListWithCapacity(providers.size()); for (EditorProvider provider : providers) { Editor editor = provider.getRootEditor(before, after, builder, info); if (editor != null) { list.add(editor); } } return CompositeEditor.compose(list); }
@Override @Nullable public Editor getRootEditor( NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { EditorProvider provider = CompositeEditorProvider.compose(getServices()); return provider.getRootEditor(before, after, builder, info); }
@Override @CheckForNull public Editor getRootEditor( NodeState before, NodeState after, NodeBuilder builder, CommitInfo info) throws CommitFailedException { EditorProvider provider = CompositeEditorProvider.compose(getServices()); return provider.getRootEditor(before, after, builder, info); }
@Override @NotNull public NodeState processCommit( @NotNull NodeState before, @NotNull NodeState after, @NotNull CommitInfo info) throws CommitFailedException { checkNotNull(before); checkNotNull(after); checkNotNull(info); NodeBuilder builder = after.builder(); Editor editor = provider.getRootEditor(before, after, builder, info); CommitFailedException exception = EditorDiff.process(editor, before, after); if (exception == null) { return builder.getNodeState(); } else { throw exception; } }
@Override @Nonnull public NodeState processCommit( @Nonnull NodeState before, @Nonnull NodeState after, @Nonnull CommitInfo info) throws CommitFailedException { checkNotNull(before); checkNotNull(after); checkNotNull(info); NodeBuilder builder = after.builder(); Editor editor = provider.getRootEditor(before, after, builder, info); CommitFailedException exception = EditorDiff.process(editor, before, after); if (exception == null) { return builder.getNodeState(); } else { throw exception; } }