@@ -0,0 +1,1797 @@
+package seedu.address.logic.commands;%0A%0Aimport seedu.address.commons.core.Messages;%0Aimport seedu.address.commons.exceptions.IllegalValueException;%0Aimport seedu.address.model.task.FloatingTask;%0A%0Apublic class MarkFloatingTaskFinishedCommand extends Command %7B%0A%0A    public static final String COMMAND_WORD = %22fin-float%22;%0A%0A    public static final String MESSAGE_USAGE = COMMAND_WORD%0A            + %22: Mark a floating task as finished and hide it from the deadline list view. %5Cn%22%0A            + %22Parameters: INDEX (must be a positive integer)%5Cn%22%0A            + %22Example: %22 + COMMAND_WORD + %22 1%22;%0A%0A    public static final String MESSAGE_MARK_TASK_FINISHED_SUCCESS = %22Floating task finished: %251$s%22;%0A%0A    private final int targetIndex;%0A%0A    public MarkFloatingTaskFinishedCommand(int targetIndex) %7B%0A        this.targetIndex = targetIndex;%0A    %7D%0A%0A    @Override%0A    public CommandResult execute() %7B%0A        FloatingTask oldFloatingTask;%0A        try %7B%0A            oldFloatingTask = model.getFloatingTask(targetIndex - 1);%0A        %7D catch (IllegalValueException e) %7B%0A            indicateAttemptToExecuteIncorrectCommand();%0A            return new CommandResult(Messages.MESSAGE_INVALID_TASK_DISPLAYED_INDEX);%0A        %7D%0A%0A        FloatingTask finishedFloatingTask;%0A        finishedFloatingTask = new FloatingTask(oldFloatingTask.name,%0A                                                oldFloatingTask.getPriority(),%0A                                                true);%0A%0A        try %7B%0A            model.setFloatingTask(targetIndex - 1, finishedFloatingTask);%0A        %7D catch (IllegalValueException e) %7B%0A            throw new AssertionError(%22The target floating task cannot be missing%22, e);%0A        %7D%0A%0A        return new CommandResult(String.format(MESSAGE_MARK_TASK_FINISHED_SUCCESS, finishedFloatingTask));%0A%0A    %7D%0A%7D%0A%0A

implement MarkFloatingTaskFinishedCommand