public static Template loadComponent(TemplateEngineDefault engine, FileObject fileObject) throws Exception { InputStream inputStream = fileObject.getInputStream(); try { String content = IOUtils.readFromInputStream(inputStream, engine.getEncode()); return loadComponent(engine, fileObject.getPath(), fileObject.getAbsolutePath(), fileObject.getLastModifiedTime(), content); } finally { if (inputStream != null) { inputStream.close(); } } } }
protected boolean checkMatch(FileObject fileObject) { boolean isMatch = false; if (fileObject.getFileName().endsWith(CLASS_EXT_FILENAME)) { isMatch = true; } return isMatch; }
public InputStream getResourceAsStream(String path) { if (fullContextFileRepository != null) { FileObject fileObject = fullContextFileRepository .getFileObject(path); if (fileObject != null && fileObject.isExist()) { return fileObject.getInputStream(); } } return originalContext.getResourceAsStream(path); }
public boolean isMatch(FileObject fileObject){ if (fileObject.getFileName() .endsWith(PROPERTIES_FILE_EXTENSION) && fileObject.getParent().getFileName() .equals(I18N_FOLDER_NAME)) { return true; } return false; }
private void addFileObject(FileObject fileObject) { if (fileObject.isFolder()) { if (fileObject.getChildren() != null) { for (FileObject child : fileObject.getChildren()) { addFileObject(child); } } } else { addFileObject(fileObject.getPath(), fileObject); } }
public Object loadModel(FileObject fileObject) { logger.logMessage(LogLevel.INFO, "正在加载关系模型文件<{}>",fileObject.getAbsolutePath()); XStream xstream =XStreamFactory.getXStream("entities"); Object object= xstream.fromXML(fileObject.getInputStream()); logger.logMessage(LogLevel.INFO, "关系模型文件<{}>加载完毕。",fileObject.getAbsolutePath()); return object; }
private void loadFile(FileObject file) { logger.logMessage(LogLevel.DEBUG, "开始扫描文件{0}", file.getAbsolutePath()); if (file.getFileName().endsWith(SERVICE_FILE_EXTENSION)) { XStream xStream = XStreamFactory .getXStream(Service.SERVICE_XSTREAM_PACKAGENAME); ServiceComponents components = null; components = (ServiceComponents) xStream.fromXML(file .getInputStream()); list.add(components); logger.logMessage(LogLevel.DEBUG, "添加ServiceComponents"); } logger.logMessage(LogLevel.DEBUG, "扫描文件{0}结束", file.getAbsolutePath()); }
public void process() { XStream stream = XStreamFactory.getXStream(PLUGIN_XSTREAM); for (FileObject file : fileObjects) { logger.logMessage(LogLevel.INFO, "开始读取plugin配置文件:{0}", file.getFileName()); PluginConfigs configs = (PluginConfigs) stream.fromXML(file .getInputStream()); manager.addPlugin(configs); logger.logMessage(LogLevel.INFO, "读取plugin配置文件:{0}完成", file.getFileName()); } }
protected static String getJarFileName(FileObject fileObject) { if (fileObject != null) { String path = fileObject.getAbsolutePath(); int n = path.lastIndexOf("!"); if (n != -1) { return path.substring(0, n); } else { return path; } } return null; }
private void refreshScanPath() { List<FileObject> classPaths = new ArrayList<FileObject>(); for (String filePath : allScanningPath) { FileObject fileObject = VFS.resolveFile(filePath); Long lastModifiedTime = fileDateMap.get(fileObject .getAbsolutePath()); long modifiedTime = fileObject.getLastModifiedTime(); if (lastModifiedTime.longValue() != modifiedTime || !fileObject.isInPackage()) { fileDateMap.put(fileObject.getAbsolutePath(), modifiedTime); if (fileObject.isExist()) { classPaths.add(fileObject); } } } resolveClassPaths(classPaths); change(); }
private Template loadTemplate(FileObject fileObject) throws TemplateException { try { Template templateFromContext = TemplateLoadUtil.loadComponent((TemplateEngineDefault) getTemplateEngine(), fileObject.getPath(), fileObject.getAbsolutePath(), fileObject.getLastModifiedTime(), getResourceContent(fileObject.getPath(), getTemplateEngine().getEncode())); addTemplate(templateFromContext); return templateFromContext; } catch (Exception e) { throw new TemplateException(e); } }
/** * 文件存在并且不在忽略处理列表中,再交给各个文件处理器进行处理。 * * @param fileObject */ private synchronized void processFile(FileObject fileObject) { if (fileObject.isExist()) { String absolutePath = fileObject.getAbsolutePath(); Long lastModifiedTime = fileDateMap.get(absolutePath); long modifiedTime = fileObject.getLastModifiedTime(); for (FileProcessor fileProcessor : fileProcessorList) { if (fileProcessor.isMatch(fileObject)) { if (lastModifiedTime == null) {// 说明是第一次发现 addFile(fileObject, fileProcessor); } else if (lastModifiedTime.longValue() != modifiedTime) { changeFile(absolutePath, fileObject, fileProcessor); } else { noChangeFile(fileObject, fileProcessor); } } } fileDateMap.put(absolutePath, modifiedTime); fileObjectCaches.put(absolutePath, fileObject); } }
public String getRealPath(String path) { if (fullContextFileRepository != null) { FileObject fileObject = fullContextFileRepository .getFileObject(path); if (fileObject != null && fileObject.isExist()) { return fileObject.getAbsolutePath(); } } return originalContext.getRealPath(path); }
/** * 删除文件资源 * @param file */ public void removeResource(FileObject file) { // 处理文件资源 String path = file.getPath(); Map<String, FileObject> fileMap = resources.get(path); if (fileMap != null) { fileMap.remove(file.getAbsolutePath()); if (fileMap.isEmpty()) { resources.remove(path); } } }
public void addConfig(FileObject fileObject) { String filePath = fileObject.getPath(); logger.logMessage(INFO, "正在加载tiny-filter处理器配置文件[{0}] ....", filePath); try { String content = FileUtil.readStreamContent(fileObject.getInputStream(), "UTF-8"); logger.logMessage(INFO, "tiny-filter处理器配置文件<{0}>加载完成。.", filePath); XmlNode root = new XmlStringParser().parse(content).getRoot(); configs.add(root); } catch (Exception e) { logger.errorMessage("载入tiny-filter配置文件<{}>时发生异常", e, filePath); throw new RuntimeException(e); } }
public static void loadDict(List<FileObject> fileObjects, String encode) { for (FileObject f : fileObjects) { loadPinYinFile(f.getInputStream(), encode); } initCharacter(); }
private void resolverScanPath() { List<FileObject> classPaths = new ArrayList<FileObject>(); for (String filePath : allScanningPath) { FileObject fileObject = VFS.resolveFile(filePath); classPaths.add(fileObject); long modifiedTime = fileObject.getLastModifiedTime(); fileDateMap.put(fileObject.getAbsolutePath(), modifiedTime); } resolveClassPaths(classPaths); }
private void loadDir(FileObject file) { logger.logMessage(LogLevel.DEBUG, "开始扫描目录{0}", file.getAbsolutePath()); for (FileObject o : file.getChildren()) { load(o); } logger.logMessage(LogLevel.DEBUG, "扫描目录{0}结束", file.getAbsolutePath()); }
private String findTemplatePath(String path) throws FileNotFoundException { FileObject fileObject = fullContextFileRepository .getFileObjectDetectLocale(path); if (fileObject != null && fileObject.isExist()) { return fileObject.getPath(); } else { int lastIndexSlash = path.lastIndexOf('/'); return getDefaultTemplatePath(path.substring(0, lastIndexSlash)); } }
public void removeMacroFile(FileObject macroFile) { macroList.remove(macroFile.getPath()); }