in nlpcraft/src/main/scala/org/apache/nlpcraft/internal/util/NCResourceReader.scala [45:72]
private def mkDir(dir: String): File =
val normDir = if dir != null then dir else DFLT_DIR
val f = new File(normDir)
if f.exists && !f.isDirectory then E(s"Invalid folder: $normDir")
if !f.exists && !f.mkdirs then E(s"Cannot create folder: $normDir")
f
/**
*
* @param url
*/
private def readMd5(url: String): Map[Path, String] =
try
Using.resource(Source.fromURL(url)) { src =>
src.getLines().map(_.trim()).filter(s => s.nonEmpty && !s.startsWith("#")).map(p => {
val seq = p.split(" ").map(_.strip)
if seq.length != 2 || seq.exists(_.isEmpty) then
throw new NCException(s"Unexpected '$url' file line format: '$p'")
val file = seq.head
val md5 = seq.last
Path.of(file) -> md5
}).toList.toMap
}