0
我有一个定义,看起来像这样:斯卡拉函数返回对象类型
sealed trait ServiceResponse
case object OK extends ServiceResponse
case object SHIT extends ServiceResponse
private def remoteService(waitTime: FiniteDuration): ServiceResponse = {
val awaitable: Future[Ok.type] = Future.successful {
Thread.sleep(waitTime.toMillis)
OK
}
Await.ready(awaitable, waitTime)
}
的remoteService功能抱怨说,它期待一个类型。那么为什么这是一个问题呢?为什么我不能简单地返回一个Object类型?
您所定义的返回类型'ServiceResponse'的方法,但该方法体返回'未来[OK.type]' - 为什么会这样?也许你的意思是'Await.result(awaitable,waitTime)'作为最后一行(可以编译) –
任何你没有返回'Future [ServiceReponse]'的原因? –