fstn
09/24/2017, 7:13 PMflowNode.nextNodes.addAll(target.outgoing.toList().map { it.target }
, I would like to return it.target and it.description can I write flowNode.nextNodes.addAll(target.outgoing.toList().map { it.target,it.description }
?karelpeeters
09/24/2017, 7:15 PMflatMap
.fstn
09/24/2017, 7:18 PMkarelpeeters
09/24/2017, 7:20 PMfstn
09/24/2017, 7:22 PMkarelpeeters
09/24/2017, 7:23 PM.map { it.target to it.description }
.fstn
09/24/2017, 7:25 PMkarelpeeters
09/24/2017, 7:25 PMinfix
function, but yes.fstn
09/24/2017, 7:27 PMkarelpeeters
09/24/2017, 7:27 PMfstn
09/24/2017, 7:35 PMval outgoingResult = target.outgoing.toList().map { it.target to it.extensionElements?.elementsQuery?.filterByType(CamundaInputOutput::class.java) }.map({ (it,flow) ->parseNode(it) to flow })
karelpeeters
09/24/2017, 7:39 PMparseNode
in the original map, there's no reason for it to be separated.outgoingResult = target.outgoing.toList().map {
parseNode(it.target) to it.extensionElements?.elementsQuery?.filterByType(CamundaInputOutput::class.java)
}
outgoingResult = target.outgoing.toList().map {
Pair(
parseNode(it.target),
it.extensionElements?.elementsQuery?.filterByType(CamundaInputOutput::class.java)
)
}
fstn
09/24/2017, 7:42 PMkarelpeeters
09/24/2017, 8:06 PMx?.let{ ... }
can help eliminate a bunch of those ?'s in that code..map{ f(it) }.map { g(x) }
is the same as .map(g(f(it))
.fstn
09/24/2017, 8:10 PMkarelpeeters
09/24/2017, 8:11 PMfstn
09/24/2017, 8:16 PM.map { it.camundaInputParameters?.map { it.textContent } }
no seems to be similar to `.map { it.camundaInputParameters}?.map { it.textContent } ``karelpeeters
09/24/2017, 9:10 PM