private void updateMetadata(TikaHSSFListener listener) {
        if (listener.hasProtectedSheet) {
            parentMetadata.set(Office.PROTECTED_WORKSHEET, true);
        }
        if (listener.hasHiddenColumn) {
            parentMetadata.set(Office.HAS_HIDDEN_COLUMNS, true);
        }
        if (listener.hasHiddenRow) {
            parentMetadata.set(Office.HAS_HIDDEN_ROWS, true);
        }
        if (! listener.commentAuthors.isEmpty()) {
            for (String author : listener.commentAuthors) {
                parentMetadata.add(Office.COMMENT_PERSONS, author);
            }
            parentMetadata.set(Office.HAS_COMMENTS, true);
        }
        if (! listener.hiddenSheets.isEmpty()) {
            for (String sheetName : listener.hiddenSheets) {
                parentMetadata.add(Office.HIDDEN_SHEET_NAMES, sheetName);
            }
            parentMetadata.set(Office.HAS_HIDDEN_SHEETS, true);
        }
        if (! listener.veryHiddenSheets.isEmpty()) {
            for (String sheetName : listener.veryHiddenSheets) {
                parentMetadata.add(Office.VERY_HIDDEN_SHEET_NAMES, sheetName);
            }
            parentMetadata.set(Office.HAS_VERY_HIDDEN_SHEETS, true);
        }
    }
Extracts text from an Excel Workbook writing the extracted content
to the specified {@link Appendable}.

@param filesystem POI file system
@throws IOException if an error occurs processing the workbook
                    or writing the extracted content
tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-microsoft-module/src/main/java/org/apache/tika/parser/microsoft/ExcelExtractor.java