public interface DifferenceEngine
| Modifier and Type | Method and Description |
|---|---|
void |
addComparisonListener(ComparisonListener l)
Registers a listener that is notified of each comparison.
|
void |
addDifferenceListener(ComparisonListener l)
Registers a listener that is notified of each comparison with
outcome other than
ComparisonResult.EQUAL. |
void |
addMatchListener(ComparisonListener l)
Registers a listener that is notified of each comparison with
outcome
ComparisonResult.EQUAL. |
void |
compare(Source control,
Source test)
Compares two pieces of XML and invokes the registered listeners.
|
void |
setAttributeFilter(Predicate<Attr> attributeFilter)
Sets the optional strategy that decides which attributes to
consider and which to ignore during comparison.
|
void |
setComparisonController(ComparisonController c)
Determines whether the comparison should stop after given
difference has been found.
|
void |
setDifferenceEvaluator(DifferenceEvaluator e)
Evaluates the severity of a difference.
|
void |
setNamespaceContext(Map<String,String> prefix2Uri)
Establish a namespace context that will be used in
Comparison.Detail#getXPath. |
void |
setNodeFilter(Predicate<Node> nodeFilter)
Sets the optional strategy that decides which nodes to
consider and which to ignore during comparison.
|
void |
setNodeMatcher(NodeMatcher n)
Sets the strategy for selecting nodes to compare.
|
void addComparisonListener(ComparisonListener l)
l - the listener to addvoid addMatchListener(ComparisonListener l)
ComparisonResult.EQUAL.l - the listener to addvoid addDifferenceListener(ComparisonListener l)
ComparisonResult.EQUAL.l - the listener to addvoid setNodeMatcher(NodeMatcher n)
n - the strategy to usevoid setAttributeFilter(Predicate<Attr> attributeFilter)
Only attributes for which the predicate returns true are part of the comparison. By default all attributes are considered.
The "special" namespace, namespace-location and
schema-instance-type attributes can not be ignored this way.
If you want to suppress comparison of them you'll need to
implement DifferenceEvaluator.
Note that NodeMatcher will not by aware of the configured attribute filter and if its decision is
based on attributes it will in general also consider attributes the filter would suppress.
attributeFilter - the strategy to usevoid setNodeFilter(Predicate<Node> nodeFilter)
Only nodes for which the predicate returns true are part of the comparison. By default nodes that are not document types are considered.
nodeFilter - the strategy to usevoid setDifferenceEvaluator(DifferenceEvaluator e)
e - the evaluator to usevoid setComparisonController(ComparisonController c)
c - the controller to usevoid setNamespaceContext(Map<String,String> prefix2Uri)
Comparison.Detail#getXPath.
Without a namespace context (or with an empty context) the XPath expressions will only use local names for elements and attributes.
prefix2Uri - maps from prefix to namespace URI.Copyright © 2001–2025 XMLUnit. All rights reserved.