class LocalPathContentParser implements PathContentParser {

	private final static String FILE_URL_PREFIX = "file:";

	private final static String CLASSPATH_URL_PREFIX = "classpath:";

	@Override
	public List<String> parseContent(List<String> pathList) throws Exception {<FILL_FUNCTION_BODY>}

	@Override
	public List<String> getFileAbsolutePath(List<String> pathList) throws Exception {
		if (CollectionUtil.isEmpty(pathList)) {
			throw new ConfigErrorException("rule source must not be null");
		}
		List<String> absolutePathList = PathMatchUtil.searchAbsolutePath(pathList);
		List<String> result = new ArrayList<>();

		for (String path : absolutePathList) {
			if (FileUtil.isAbsolutePath(path) && FileUtil.isFile(path)) {
				path = FILE_URL_PREFIX + path;
				result.add(new FileResource(path).getFile().getAbsolutePath());
			}
			else {
				if (!path.startsWith(CLASSPATH_URL_PREFIX)) {
					path = CLASSPATH_URL_PREFIX + path;

					// 这里会有自定义解析器
					if (ClassLoaderUtil.isPresent(path)) {
						result.add(new ClassPathResource(path).getAbsolutePath());
					}
				}
			}
		}

		return result;
	}

	@Override
	public int priority() {
		return 2;
	}

}

		if (CollectionUtil.isEmpty(pathList)) {
			throw new ConfigErrorException("rule source must not be null");
		}
		List<String> absolutePathList = PathMatchUtil.searchAbsolutePath(pathList);

		List<String> contentList = new ArrayList<>();

		for (String path : absolutePathList) {
			if (FileUtil.isAbsolutePath(path) && FileUtil.isFile(path)) {
				path = FILE_URL_PREFIX + path;
			}
			else {
				if (!path.startsWith(CLASSPATH_URL_PREFIX)) {
					path = CLASSPATH_URL_PREFIX + path;
				}
			}
			String content = ResourceUtil.readUtf8Str(path);
			if (StrUtil.isNotBlank(content)) {
				contentList.add(content);
			}
		}

		return contentList;
	
<no_super_class>