Scala中的 -> 与 <-以及=>,{}和()
Willy__QI:
protected def authorizeAndDispatch(method: HttpMethod, user: Identity, resource: Resource)(
implicit transid: TransactionId): RequestContext => Future[RouteResult] = {
val right = collection.determineRight(method, resource.entity)
onComplete(entitlementProvider.check(user, right, resource)) {
case Success(_) => dispatchOp(user, right, resource)
case Failure(t) =>
t match {
case (r: RejectRequest) =>
r.code match {
case Forbidden =>
handleEntitlementFailure(
RejectRequest(
Forbidden,
Some(ErrorResponse(Messages.notAuthorizedtoAccessResource(resource.fqname), transid))))
case NotFound =>
handleEntitlementFailure(
RejectRequest(NotFound, Some(ErrorResponse(Messages.resourceDoesntExist(resource.fqname), transid))))
case _ => handleEntitlementFailure(t)
}
}
}
}
|