0
私はこのスリック2.1ベースのレポ方法があります。複数文スリック2.1 withDynSessionブロック
getDatabase
は単に
slick.jdbc.JdbcBackend
から
Database.forURL(..)
を返し
def addContentBySourceInfo(userId: UUID, adopted: Boolean, contentId: UUID, contentInfo: ContentWithoutId): Either[ContentAlreadyExistsError, Content] = {
getDatabase withDynSession {
val content = contentInfo.toContent(contentId)
Try {
ContentTable.query += content
UserContentTable.query += UserContentModel(userId, contentId, Some(adopted))
} match {
case Failure(e:com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException) =>
Left(ContentAlreadyExistsError(content.source, content.sourceId))
case Failure(e) => throw e // could be some other error, and we should fail fast.
case Success(s) => Right(content)
}
}
}
を。
Slick 3.xのDBIO
APIとの互換性をどのように変換しますか?
注:私は(私はまだ私のリポジトリAPIを壊したくないすなわち)非同期呼び出しを処理するために私の全体のリポジトリ層をアップグレードする準備ができていますまで、私は、これらのメソッドに同期を維持したいと思い
おかげで、ちょうど見た後に似た何かを報告して戻ってきた:https://youtu.be/WvxXz7aklik?t=30m16s – ThaDon