Change Refactor
inverted if and changed for comprehension to a foldRight with a match on the result
This commit is contained in:
parent
ec83d01dca
commit
573fab9526
|
@ -102,23 +102,22 @@ object KnownForSources {
|
|||
TypedPipe
|
||||
.from(TextLine(textFile))
|
||||
.flatMap { str =>
|
||||
if (!str.startsWith("#")) {
|
||||
if (str.startsWith("#")) {none}
|
||||
try {
|
||||
val tokens = str.trim.split("\\s+")
|
||||
val res = Array.newBuilder[(Int, Float)]
|
||||
val userId = tokens(0).toLong
|
||||
for (i <- 1 until tokens.length) {
|
||||
(1 until tokens.length).foldRight(Array.newBuilder[(Int, Float)])((i, r) => {
|
||||
val Array(cIdStr, scoreStr) = tokens(i).split(":")
|
||||
val clusterId = cIdStr.toInt
|
||||
val score = scoreStr.toFloat
|
||||
val newEntry = (clusterId, score)
|
||||
res += newEntry
|
||||
r += newEntry
|
||||
}).result() match {
|
||||
case (res) if res.nonEmpty => Some((userId, res.result()))
|
||||
_ => none
|
||||
}
|
||||
val result = res.result
|
||||
if (result.nonEmpty) {
|
||||
Some((userId, res.result()))
|
||||
} else None
|
||||
} catch {
|
||||
}
|
||||
catch {
|
||||
case ex: Throwable =>
|
||||
log.warning(
|
||||
s"Error while loading knownFor from $textFile for line <$str>: " +
|
||||
|
@ -126,7 +125,6 @@ object KnownForSources {
|
|||
)
|
||||
None
|
||||
}
|
||||
} else None
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue