/** * Returns the text of the first line in the loaded document which has an error. * * @ensure result is the text of the first line with an error * @throws NoDocumentException, if a document has not been loaded * @throws NoSuchLineException, if there are no lines with errors */ public String getLine() { if (document == null) { throw new NoDocumentException(); } /* * line holds the first line in the loaded document which contains an * error. */ Line line = getFirstLineWithError(); if (line == null) { throw new NoSuchLineException(); } return line.getText(); }
/** * Returns the text of the first line with an error in the loaded document with the first * misspelled word replaced by correction. The error is removed from the loaded document. * * @require correction is not null * @ensure result is the text of the first line with an error with its first misspelled word * replaced by correction, and the first error is removed from the loaded document * @throws NoDocumentException, if a document has not been loaded * @throws NoSuchErrorException, if there are no errors in the loaded document */ public String correctError(String correction) { if (document == null) { throw new NoDocumentException(); } /* * line holds the first line in the loaded document which contains an * error. */ Line lineWithError = getFirstLineWithError(); if (lineWithError == null) { throw new NoSuchErrorException(); } /* * lineCorrected holds the corrected version of lineWithError. */ Line lineCorrected = lineWithError.correctError(0, correction); document.correctError(getLineIndex(lineWithError), 0, correction); return lineCorrected.getText(); }