Class EditCommand<T>
- Type Parameters:
T- object type
- Direct Known Subclasses:
DeleteCommand,InsertCommand,KeepCommand
public abstract class EditCommand<T> extends Object
When two objects sequences are compared through the
StringsComparator.getScript method,
the result is provided has a script 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 and
KeepCommand which correspond to an object of the first
sequence which equals an object in the second sequence. It is
guaranteed that comparison is always performed this way (i.e. the
equals 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 the equals method is specialized.
This code has been adapted from Apache Commons Collections 4.0.
- Since:
- 1.0
- See Also:
StringsComparator,EditScript
-
Constructor Summary
Constructors Modifier Constructor Description protectedEditCommand(T object)Simple constructor. -
Method Summary
Modifier and Type Method Description abstract voidaccept(CommandVisitor<T> visitor)Accept a visitor.protected TgetObject()Returns the object associated with this command.
-
Constructor Details
-
EditCommand
Simple constructor. Creates a new instance of EditCommand- Parameters:
object- reference to the object associated with this command, this refers to an element of one of the sequences being compared
-
-
Method Details
-
getObject
Returns the object associated with this command.- Returns:
- The object on which the command is applied
-
accept
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
-