package command; public class InsertCommand implements Command { private final TextEditor editor; private final String text; private final int position; public InsertCommand(TextEditor editor, String text, int position) { this.editor = editor; this.text = text; this.position = position; } @Override public void execute() { editor.insertText(text, position); } @Override public void undo() { editor.deleteText(position, text.length()); } @Override public String getDescription() { return "Insert \"" + text + "\" at " + position; } }