Skip to content

Instantly share code, notes, and snippets.

def test = Action {
// Solution la plus générique
Async {
val futureA = WS.url("xx").get
val futureB = WS.url("yy").get
val resultAB = for {
resA <- futureA
resB <- futureB
} yield (resA, resB)
// searches for nodes by filtering on key value
def filter(jsv: JsValue, filterFn: String => Boolean): Seq[JsValue] = {
jsv match {
case JsObject(fields) => fields.toMap.foldLeft(Seq[JsValue]())((o, pair) => pair match {
case (key, value) if filterFn(key) => o ++ (value +: (filter(value, filterFn)))
case (_, value) => o ++ (filter(value, filterFn))
})
case _ => Seq[JsValue]()
}
}