/** * Get the eftar reader for the data directory. If it has been already opened and not closed, this * instance gets returned. One should not close it once used: {@link #cleanup(ServletRequest)} * takes care to close it. * * @return {@code null} if a reader can't be established, the reader otherwise. */ public EftarFileReader getEftarReader() { if (eftarReader == null || eftarReader.isClosed()) { File f = getEnv().getConfiguration().getDtagsEftar(); if (f == null) { eftarReader = null; } else { try { eftarReader = new EftarFileReader(f); } catch (FileNotFoundException e) { LOGGER.log(Level.FINE, "Failed to create EftarFileReader: ", e); } } } return eftarReader; }
/** * Get the definition tag for the request related file or directory. * * @return an empty string if not found, the tag otherwise. */ public String getDefineTagsIndex() { if (dtag != null) { return dtag; } getEftarReader(); if (eftarReader != null) { try { dtag = eftarReader.get(getPath()); // cfg.getPrefix() != Prefix.XREF_S) { } catch (IOException e) { LOGGER.log(Level.INFO, "Failed to get entry from eftar reader: ", e); } } if (dtag == null) { dtag = ""; } return dtag; }