public String getResourceAsString(final String path, final HashMap<String, String> tokens) throws IOException { // Read file IRepositoryAccess repository = CdaEngine.getEnvironment().getRepositoryAccess(); String resourceContents = StringUtils.EMPTY; if (repository.resourceExists(path)) { InputStream in = null; try { in = repository.getResourceInputStream(path, FileAccess.READ); resourceContents = IOUtils.toString(in); } finally { IOUtils.closeQuietly(in); } } // Make replacement of tokens if (tokens != null) { for (final String key : tokens.keySet()) { resourceContents = StringUtils.replace(resourceContents, key, tokens.get(key)); } } return resourceContents; }