override def wrapFunction()

in utils/src/main/scala/com/google/example/auth/cask/Authorized.scala [19:28]


  override def wrapFunction(ctx: Request, delegate: Delegate): Result[Raw] =
    tokenFromRequest(ctx) match
      case Some(token) =>
        try
          val user = jwt.ensureUserHasRoles(token, roles).get
          // If we get a valid token, we'll put it into Context.
          scala.util.Using.Manager { use =>
            use(Jwt.storeTokenInContext(Context.current(), token).makeCurrent())
            delegate(Map("user" -> user, "claim" -> jwt.decode(token).get, "token" -> token))
          }.get