Class EditCommand<T>
- java.lang.Object
-
- org.apache.commons.text.diff.EditCommand<T>
-
- Type Parameters:
T
- object type
- Direct Known Subclasses:
DeleteCommand
,InsertCommand
,KeepCommand
public abstract class EditCommand<T> extends java.lang.Object
Abstract base class for all commands used to transform an objects sequence into another one.When two objects sequences are compared through the
StringsComparator.getScript
method, the result is provided has ascript
containing the commands that progressively transform the first sequence into the second one.There are only three types of commands, all of which are subclasses of this abstract class. Each command is associated with one object belonging to at least one of the sequences. These commands are
InsertCommand
which correspond to an object of the second sequence being inserted into the first sequence,DeleteCommand
which correspond to an object of the first sequence being removed andKeepCommand
which correspond to an object of the first sequence whichequals
an object in the second sequence. It is guaranteed that comparison is always performed this way (i.e. theequals
method of the object from the first sequence is used and the object passed as an argument comes from the second sequence) ; this can be important if subclassing is used for some elements in the first sequence and theequals
method is specialized.This code has been adapted from Apache Commons Collections 4.0.
- Since:
- 1.0
- See Also:
StringsComparator
,EditScript
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract void
accept(CommandVisitor<T> visitor)
Accept a visitor.
-
-
-
Method Detail
-
accept
public abstract void accept(CommandVisitor<T> visitor)
Accept a visitor.This method is invoked for each commands belonging to an
EditScript
, in order to implement the visitor design pattern- Parameters:
visitor
- the visitor to be accepted
-
-