Class Patch<T>

  • Type Parameters:
    T - The type of the compared elements in the 'lines'.
    All Implemented Interfaces:
    Serializable

    public final class Patch<T>
    extends Object
    implements Serializable
    Describes the patch holding all deltas between the original and revised texts.
    Author:
    Dmitry Naumenko
    See Also:
    Serialized Form
    • Field Detail

      • CONFLICT_PRODUCES_EXCEPTION

        public final ConflictOutput<T> CONFLICT_PRODUCES_EXCEPTION
        Standard Patch behaviour to throw an exception for pathching conflicts.
      • CONFLICT_PRODUCES_MERGE_CONFLICT

        public static final ConflictOutput<String> CONFLICT_PRODUCES_MERGE_CONFLICT
        Git like merge conflict output.
    • Constructor Detail

      • Patch

        public Patch()
      • Patch

        public Patch​(int estimatedPatchSize)
    • Method Detail

      • withConflictOutput

        public Patch withConflictOutput​(ConflictOutput<T> conflictOutput)
        Alter normal conflict output behaviour to e.g. inclide some conflict statements in the result, like git does it.
      • restore

        public List<T> restore​(List<T> target)
        Restore the text to original. Opposite to applyTo() method.
        Parameters:
        target - the given target
        Returns:
        the restored text
      • addDelta

        public void addDelta​(AbstractDelta<T> delta)
        Add the given delta to this patch
        Parameters:
        delta - the given delta
      • getDeltas

        public List<AbstractDelta<T>> getDeltas()
        Get the list of computed deltas
        Returns:
        the deltas
      • generate

        public static <T> Patch<T> generate​(List<T> original,
                                            List<T> revised,
                                            List<Change> _changes,
                                            boolean includeEquals)