public final class DiffUtils
extends java.lang.Object
| Modifier and Type | Method and Description |
|---|---|
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised) |
static <T> Patch<T> |
diff(java.util.List<T> source,
java.util.List<T> target,
java.util.function.BiPredicate<T,T> equalizer)
Computes the difference between the original and revised list of elements
with default diff algorithm
|
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised,
boolean includeEqualParts) |
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised,
DiffAlgorithmI<T> algorithm)
Computes the difference between the original and revised list of elements
with default diff algorithm
|
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised,
DiffAlgorithmI<T> algorithm,
DiffAlgorithmListener progress) |
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised,
DiffAlgorithmI<T> algorithm,
DiffAlgorithmListener progress,
boolean includeEqualParts)
Computes the difference between the original and revised list of elements
with default diff algorithm
|
static <T> Patch<T> |
diff(java.util.List<T> original,
java.util.List<T> revised,
DiffAlgorithmListener progress)
Computes the difference between the original and revised list of elements
with default diff algorithm
|
static Patch<java.lang.String> |
diff(java.lang.String sourceText,
java.lang.String targetText)
Computes the difference between the original and revised text.
|
static Patch<java.lang.String> |
diff(java.lang.String sourceText,
java.lang.String targetText,
DiffAlgorithmListener progress)
Computes the difference between the original and revised text.
|
static Patch<java.lang.String> |
diffInline(java.lang.String original,
java.lang.String revised)
Computes the difference between the given texts inline.
|
static <T> java.util.List<T> |
patch(java.util.List<T> original,
Patch<T> patch)
Patch the original text with given patch
|
static <T> java.util.List<T> |
unpatch(java.util.List<T> revised,
Patch<T> patch)
Unpatch the revised text for a given patch
|
static void |
withDefaultDiffAlgorithmFactory(DiffAlgorithmFactory factory) |
public static void withDefaultDiffAlgorithmFactory(DiffAlgorithmFactory factory)
public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised, DiffAlgorithmListener progress)
T - types to be diffedoriginal - The original text. Must not be null.revised - The revised text. Must not be null.progress - progress listenernull.public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised)
public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised, boolean includeEqualParts)
public static Patch<java.lang.String> diff(java.lang.String sourceText, java.lang.String targetText, DiffAlgorithmListener progress)
sourceText - targetText - progress - public static Patch<java.lang.String> diff(java.lang.String sourceText, java.lang.String targetText)
sourceText - targetText - public static <T> Patch<T> diff(java.util.List<T> source, java.util.List<T> target, java.util.function.BiPredicate<T,T> equalizer)
T - source - The original text. Must not be null.target - The revised text. Must not be null.equalizer - the equalizer object to replace the default compare
algorithm (Object.equals). If null the default equalizer of the
default algorithm is used..null.public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised, DiffAlgorithmI<T> algorithm, DiffAlgorithmListener progress)
public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised, DiffAlgorithmI<T> algorithm, DiffAlgorithmListener progress, boolean includeEqualParts)
T - original - The original text. Must not be null.revised - The revised text. Must not be null.algorithm - The diff algorithm. Must not be null.progress - The diff algorithm listener.includeEqualParts - Include equal data parts into the patch.null.public static <T> Patch<T> diff(java.util.List<T> original, java.util.List<T> revised, DiffAlgorithmI<T> algorithm)
original - The original text. Must not be null.revised - The revised text. Must not be null.algorithm - The diff algorithm. Must not be null.null.public static Patch<java.lang.String> diffInline(java.lang.String original, java.lang.String revised)
original - revised - public static <T> java.util.List<T> patch(java.util.List<T> original,
Patch<T> patch)
throws PatchFailedException
original - the original textpatch - the given patchPatchFailedException - if can't apply patchpublic static <T> java.util.List<T> unpatch(java.util.List<T> revised,
Patch<T> patch)
revised - the revised textpatch - the given patch