aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala
diff options
context:
space:
mode:
authorvlad <vlad@driver.xyz>2017-08-07 14:34:07 -0700
committervlad <vlad@driver.xyz>2017-08-07 14:34:07 -0700
commit2283b61115fc94029f4772e2fbd05eaabb2ad5a8 (patch)
treead2c4bf5bc1295d1318baea92ac34443803009a8 /src/main/scala
parenta1e2e7b9ed43a8a0757a4c678ea855d97f1a16c8 (diff)
parent886415aa5f86e758d9a9aafa8f60128e3473311a (diff)
downloaddriver-core-2283b61115fc94029f4772e2fbd05eaabb2ad5a8.tar.gz
driver-core-2283b61115fc94029f4772e2fbd05eaabb2ad5a8.tar.bz2
driver-core-2283b61115fc94029f4772e2fbd05eaabb2ad5a8.zip
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'src/main/scala')
-rw-r--r--src/main/scala/xyz/driver/core/app.scala4
-rw-r--r--src/main/scala/xyz/driver/core/core.scala3
-rw-r--r--src/main/scala/xyz/driver/core/database/PatchedHsqldbProfile.scala6
-rw-r--r--src/main/scala/xyz/driver/core/database/database.scala6
-rw-r--r--src/main/scala/xyz/driver/core/database/package.scala2
-rw-r--r--src/main/scala/xyz/driver/core/file/GcsStorage.scala2
-rw-r--r--src/main/scala/xyz/driver/core/file/S3Storage.scala2
-rw-r--r--src/main/scala/xyz/driver/core/rest.scala8
-rw-r--r--src/main/scala/xyz/driver/core/swagger.scala10
9 files changed, 23 insertions, 20 deletions
diff --git a/src/main/scala/xyz/driver/core/app.scala b/src/main/scala/xyz/driver/core/app.scala
index 363f1e8..a64093a 100644
--- a/src/main/scala/xyz/driver/core/app.scala
+++ b/src/main/scala/xyz/driver/core/app.scala
@@ -104,7 +104,7 @@ object app {
lazy val names = methods map (_.name) mkString ", "
options { ctx =>
- optionalHeaderValueByType[Origin]() { originHeader =>
+ optionalHeaderValueByType[Origin](()) { originHeader =>
respondWithHeaders(List[HttpHeader](
Allow(methods),
`Access-Control-Allow-Methods`(methods),
@@ -130,7 +130,7 @@ object app {
http.bindAndHandle(
route2HandlerFlow(extractHost { origin =>
extractClientIP { ip =>
- optionalHeaderValueByType[Origin]() { originHeader =>
+ optionalHeaderValueByType[Origin](()) { originHeader =>
{ ctx =>
val trackingId = rest.extractTrackingId(ctx.request)
MDC.put("trackingId", trackingId)
diff --git a/src/main/scala/xyz/driver/core/core.scala b/src/main/scala/xyz/driver/core/core.scala
index 1babd91..4747574 100644
--- a/src/main/scala/xyz/driver/core/core.scala
+++ b/src/main/scala/xyz/driver/core/core.scala
@@ -32,6 +32,9 @@ package object core {
def continueIgnoringNone: OptionT[H, Unit] =
optionTValue.map(_ => ()).orElse(OptionT.some[H, Unit](()))
+
+ def subflatMap[B](f: T => Option[B]): OptionT[H, B] =
+ OptionT.optionT[H](implicitly[Monad[H]].map(optionTValue.run)(_.flatMap(f)))
}
implicit class MonadicExtensions[H[_]: Monad, T](monadicValue: H[T]) {
diff --git a/src/main/scala/xyz/driver/core/database/PatchedHsqldbProfile.scala b/src/main/scala/xyz/driver/core/database/PatchedHsqldbProfile.scala
index 1331efc..a3f57c1 100644
--- a/src/main/scala/xyz/driver/core/database/PatchedHsqldbProfile.scala
+++ b/src/main/scala/xyz/driver/core/database/PatchedHsqldbProfile.scala
@@ -1,11 +1,11 @@
package xyz.driver.core.database
-import slick.driver.HsqldbDriver
+import slick.jdbc.HsqldbProfile
import slick.jdbc.JdbcType
import slick.ast.FieldSymbol
-import slick.profile.RelationalProfile
+import slick.relational.RelationalProfile
-trait PatchedHsqldbProfile extends HsqldbDriver {
+trait PatchedHsqldbProfile extends HsqldbProfile {
override def defaultSqlTypeName(tmd: JdbcType[_], sym: Option[FieldSymbol]): String = tmd.sqlType match {
case java.sql.Types.VARCHAR =>
val size = sym.flatMap(_.findColumnOption[RelationalProfile.ColumnOption.Length])
diff --git a/src/main/scala/xyz/driver/core/database/database.scala b/src/main/scala/xyz/driver/core/database/database.scala
index 8426309..7855a16 100644
--- a/src/main/scala/xyz/driver/core/database/database.scala
+++ b/src/main/scala/xyz/driver/core/database/database.scala
@@ -1,7 +1,7 @@
package xyz.driver.core
-import slick.backend.DatabaseConfig
-import slick.driver.JdbcProfile
+import slick.basic.DatabaseConfig
+import slick.jdbc.JdbcProfile
import xyz.driver.core.date.Date
import xyz.driver.core.time.Time
@@ -21,7 +21,7 @@ package database {
val dbConfig: DatabaseConfig[JdbcProfile] = DatabaseConfig.forConfig(databaseName, config)
new Database {
- val profile: JdbcProfile = dbConfig.driver
+ val profile: JdbcProfile = dbConfig.profile
val database: JdbcProfile#Backend#Database = dbConfig.db
}
}
diff --git a/src/main/scala/xyz/driver/core/database/package.scala b/src/main/scala/xyz/driver/core/database/package.scala
index b39169d..9385c8f 100644
--- a/src/main/scala/xyz/driver/core/database/package.scala
+++ b/src/main/scala/xyz/driver/core/database/package.scala
@@ -5,7 +5,7 @@ import java.util.Calendar
import date.{Date, Month}
import slick.dbio._
-import slick.driver.JdbcProfile
+import slick.jdbc.JdbcProfile
package object database {
diff --git a/src/main/scala/xyz/driver/core/file/GcsStorage.scala b/src/main/scala/xyz/driver/core/file/GcsStorage.scala
index 65a5a50..76438cf 100644
--- a/src/main/scala/xyz/driver/core/file/GcsStorage.scala
+++ b/src/main/scala/xyz/driver/core/file/GcsStorage.scala
@@ -11,7 +11,7 @@ import java.nio.file.{Path, Paths}
import java.util.concurrent.TimeUnit
import com.google.cloud.storage.Storage.BlobListOption
-import com.google.cloud.storage._
+import com.google.cloud.storage.{Option => _, _}
import xyz.driver.core.time.Time
import xyz.driver.core.{Name, Revision, generators}
diff --git a/src/main/scala/xyz/driver/core/file/S3Storage.scala b/src/main/scala/xyz/driver/core/file/S3Storage.scala
index 49bebc8..311aab3 100644
--- a/src/main/scala/xyz/driver/core/file/S3Storage.scala
+++ b/src/main/scala/xyz/driver/core/file/S3Storage.scala
@@ -43,7 +43,7 @@ class S3Storage(s3: AmazonS3, bucket: Name[Bucket], executionContext: ExecutionC
override def stream(filePath: Path): OptionT[Future, Source[ByteString, NotUsed]] =
OptionT.optionT(Future {
Option(s3.getObject(new GetObjectRequest(bucket.value, filePath.toString))).map { elem =>
- StreamConverters.fromInputStream(elem.getObjectContent, chunkSize).mapMaterializedValue(_ => NotUsed)
+ StreamConverters.fromInputStream(() => elem.getObjectContent(), chunkSize).mapMaterializedValue(_ => NotUsed)
}
})
diff --git a/src/main/scala/xyz/driver/core/rest.scala b/src/main/scala/xyz/driver/core/rest.scala
index 1088e40..2527b75 100644
--- a/src/main/scala/xyz/driver/core/rest.scala
+++ b/src/main/scala/xyz/driver/core/rest.scala
@@ -91,7 +91,7 @@ object `package` {
case Seq(start, end) =>
builder += ' '
builder ++= byteString.slice(start, end)
- case Seq(byteStringLength) => // Should not match; sliding on at least 2 elements
+ case Seq(_) => // Should not match; sliding on at least 2 elements
assert(indices.nonEmpty, s"Indices should have been nonEmpty: $indices")
}
builder.result
@@ -205,7 +205,7 @@ trait Authorization[U <: User] {
implicit ctx: ServiceRequestContext): Future[AuthorizationResult]
}
-class AlwaysAllowAuthorization[U <: User](implicit execution: ExecutionContext) extends Authorization[U] {
+class AlwaysAllowAuthorization[U <: User] extends Authorization[U] {
override def userHasPermissions(user: U, permissions: Seq[Permission])(
implicit ctx: ServiceRequestContext): Future[AuthorizationResult] = {
val permissionsMap = permissions.map(_ -> true).toMap
@@ -427,9 +427,9 @@ class HttpRestServiceTransport(applicationName: Name[App],
val request = requestStub
.withHeaders(context.contextHeaders.toSeq.map {
- case (ContextHeaders.TrackingIdHeader, headerValue) =>
+ case (ContextHeaders.TrackingIdHeader, _) =>
RawHeader(ContextHeaders.TrackingIdHeader, context.trackingId)
- case (ContextHeaders.StacktraceHeader, headerValue) =>
+ case (ContextHeaders.StacktraceHeader, _) =>
RawHeader(ContextHeaders.StacktraceHeader,
Option(MDC.get("stack"))
.orElse(context.contextHeaders.get(ContextHeaders.StacktraceHeader))
diff --git a/src/main/scala/xyz/driver/core/swagger.scala b/src/main/scala/xyz/driver/core/swagger.scala
index 36c52e0..a97e0ac 100644
--- a/src/main/scala/xyz/driver/core/swagger.scala
+++ b/src/main/scala/xyz/driver/core/swagger.scala
@@ -85,7 +85,7 @@ object swagger {
val javaType = Json.mapper().constructType(`type`)
(getEnumerationInstance(javaType.getRawClass) match {
- case Some(enumInstance) => Option.empty[Model] // ignore scala enums
+ case Some(_) => Option.empty[Model] // ignore scala enums
case None =>
val customObjectModel = customObjects.get(javaType.getRawClass).map { objectExampleJson =>
val properties = objectExampleJson.asJsObject.fields.mapValues(parseJsonValueToSwaggerProperty).flatMap {
@@ -125,10 +125,10 @@ object swagger {
case (key, value) => value.map(v => key -> v)
}
Option(new ObjectProperty(subProperties.asJava))
- case JsBoolean(value) => Option(booleanProperty())
- case JsNumber(value) => Option(numericProperty(example = Option(value)))
- case JsString(value) => Option(stringProperty(example = Option(value)))
- case _ => Option.empty[Property]
+ case JsBoolean(_) => Option(booleanProperty())
+ case JsNumber(value) => Option(numericProperty(example = Option(value)))
+ case JsString(value) => Option(stringProperty(example = Option(value)))
+ case _ => Option.empty[Property]
}
}