package edu.isi.karma.controller.command.alignment; import edu.isi.karma.controller.command.CommandException; import edu.isi.karma.controller.command.CommandType; import edu.isi.karma.controller.command.WorksheetSelectionCommand; import edu.isi.karma.controller.history.CommandHistory; import edu.isi.karma.controller.history.CommandHistoryUtil; import edu.isi.karma.controller.update.HistoryUpdate; import edu.isi.karma.controller.update.UpdateContainer; import edu.isi.karma.rep.Workspace; /** * Created by chengyey on 9/25/15. */ public class RefreshHistoryCommand extends WorksheetSelectionCommand{ public RefreshHistoryCommand(String id, String model, String worksheetId, String selectionId) { super(id, model, worksheetId, selectionId); } @Override public String getCommandName() { return getClass().getSimpleName(); } @Override public String getTitle() { return "Refresh History"; } @Override public String getDescription() { return null; } @Override public CommandType getCommandType() { return CommandType.notInHistory; } @Override public UpdateContainer doIt(Workspace workspace) throws CommandException { CommandHistory history = workspace.getCommandHistory(); UpdateContainer updateContainer = new UpdateContainer(); if (history.isStale(worksheetId)) { CommandHistoryUtil util = new CommandHistoryUtil(history.getCommandsFromWorksheetId(worksheetId), workspace, worksheetId); updateContainer.append(util.replayHistory()); updateContainer.add(new HistoryUpdate(history)); } return updateContainer; } @Override public UpdateContainer undoIt(Workspace workspace) { return null; } }