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]'的原因? –