/**
* Performs all file existence checks contained in the validation profile. If the validation has failed (some of the files specified
* in the validation profile do not exist), {@link MissingFile} exception is thrown.
*
* @param sipPath path to the SIP
* @param validationProfileDoc document with the validation profile
* @param validationProfileId id of the validation profile
* @throws XPathExpressionException if there is an error in the XPath expression
*/
private void performFileExistenceChecks(String sipPath, Document validationProfileDoc, String validationProfileId) throws
XPathExpressionException {
XPath xPath = XPathFactory.newInstance().newXPath();
NodeList nodes = (NodeList) xPath.compile("/profile/rule/fileExistenceCheck")
.evaluate(validationProfileDoc, XPathConstants.NODESET);
for (int i = 0; i< nodes.getLength(); i++) {
Element element = (Element) nodes.item(i);
String relativePath = element.getElementsByTagName("filePath").item(0).getTextContent();
String absolutePath = sipPath + relativePath;
if (!ValidationChecker.fileExists(absolutePath)) {
log.info("Validation of SIP with profile " + validationProfileId + " failed. File at \"" + relativePath + "\" is missing.");
throw new MissingFile(relativePath, validationProfileId);
}
}
}
ValidationService.java 文件源码
java
阅读 24
收藏 0
点赞 0
评论 0
项目:ARCLib
作者:
评论列表
文章目录