В следующем операторе, pickBranch
возвращает Reads
...Play Framework: * pickBranch * и * или *
((__ \ 'firstName).json.pickBranch)
... на котором я могу вызвать or
так:
val emptyObj = __.json.put(Json.obj())
((__ \ 'firstName).json.pickBranch or emptyObj)
Если pickBranch
преуспевает, то or
возвращает результат pickBranch
, в противном случае он возвращает emptyObj
.
Теперь, можно вызвать or
на Reads
возвращенного pickBranch
и передать либо emptyObj
или что pickBranch
вернулся?
val emptyAllowed = true
((__ \ 'firstName).json.pickBranch or (if (emptyAllowed) emptyObj else >>>RESULT OF pickBranch<<<))
Хотя эта ссылка может ответить на вопрос, лучше включить основные части ответа здесь и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. –
ОК, только что добавил ;-) – j3d