try {
FileInfo baseFileInfo = fileInfoAccessor.getFileInfo(basePath);
FileInfo childFileInfo = fileInfoAccessor.getFileInfo(childPath);
baseCanonicalPath = baseFileInfo.canonicalPath();
childCanonicalPath = childFileInfo.canonicalPath();
} catch (NullPointerException ex) {
//TODO: fix the chicken/egg issue that causes this NPE if RelaltivePath is used during the file modification service constructor
baseCanonicalPath = getCanonicalPath(basePath);
childCanonicalPath = getCanonicalPath(childPath);
}