diff options
author | Kseniya Tomskikh <ktomskih@datamonsters.co> | 2017-10-23 15:49:45 +0700 |
---|---|---|
committer | Kseniya Tomskikh <ktomskih@datamonsters.co> | 2017-10-23 15:49:45 +0700 |
commit | e9f8fbb7f8f379e6885331c94364f6e7d41ffbb2 (patch) | |
tree | 21ad5ddab3700b0d1f6bf74f54ef83dd84ed0963 /src/main | |
parent | 6d6e732368e97e319653f00e498189afceeb4671 (diff) | |
download | rest-query-e9f8fbb7f8f379e6885331c94364f6e7d41ffbb2.tar.gz rest-query-e9f8fbb7f8f379e6885331c94364f6e7d41ffbb2.tar.bz2 rest-query-e9f8fbb7f8f379e6885331c94364f6e7d41ffbb2.zip |
Added custom set parameters to slick qb
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuicommon/db/SlickQueryBuilder.scala | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/db/SlickQueryBuilder.scala b/src/main/scala/xyz/driver/pdsuicommon/db/SlickQueryBuilder.scala index dc03a52..7d2f085 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/db/SlickQueryBuilder.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/db/SlickQueryBuilder.scala @@ -6,6 +6,7 @@ import java.time.LocalDateTime import slick.jdbc.{JdbcProfile, PositionedParameters, SQLActionBuilder, SetParameter} import xyz.driver.pdsuicommon.db.Sorting.{Dimension, Sequential} import xyz.driver.pdsuicommon.db.SortingOrder.{Ascending, Descending} +import xyz.driver.pdsuicommon.domain.{LongId, StringId, UuidId} import scala.concurrent.{ExecutionContext, Future} @@ -44,6 +45,18 @@ object SlickQueryBuilder { pp.setObject(v, JDBCType.BINARY.getVendorTypeNumber) } } + + implicit def setLongIdQueryParameter[T]: SetParameter[LongId[T]] = SetParameter[LongId[T]] { (v, pp) => + pp.setLong(v.id) + } + + implicit def setStringIdQueryParameter[T]: SetParameter[StringId[T]] = SetParameter[StringId[T]] { (v, pp) => + pp.setString(v.id) + } + + implicit def setUuidIdQueryParameter[T]: SetParameter[UuidId[T]] = SetParameter[UuidId[T]] { (v, pp) => + pp.setObject(v.id, JDBCType.BINARY.getVendorTypeNumber) + } } final case class SlickTableLink(keyColumnName: String, foreignTableName: String, foreignKeyColumnName: String) |