diff --git a/.gitignore b/.gitignore index 2d7bcaf6..eead8b7c 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,10 @@ project/plugins/project/ # Scala-IDE specific .scala_dependencies .worksheet +.idea # Ensime .ensime + +# OSX +.DS_Store diff --git a/client/shared/src/main/scala/org/scalaexercises/evaluator/EvaluatorResponses.scala b/client/shared/src/main/scala/org/scalaexercises/evaluator/EvaluatorResponses.scala index 666e0cfe..15618084 100644 --- a/client/shared/src/main/scala/org/scalaexercises/evaluator/EvaluatorResponses.scala +++ b/client/shared/src/main/scala/org/scalaexercises/evaluator/EvaluatorResponses.scala @@ -15,9 +15,8 @@ import org.scalaexercises.evaluator.free.algebra.EvaluatorOp import scala.concurrent.Future import scala.concurrent.ExecutionContext.Implicits.global - -import fr.hmil.roshttp.HttpResponse -import fr.hmil.roshttp.HeaderMap +import fr.hmil.roshttp.response.SimpleHttpResponse +import fr.hmil.roshttp.util.HeaderMap object EvaluatorResponses { @@ -40,7 +39,7 @@ object EvaluatorResponses { case class UnexpectedException(msg: String) extends EvaluationException(msg) - def toEntity[A](futureResponse: Future[HttpResponse])( + def toEntity[A](futureResponse: Future[SimpleHttpResponse])( implicit D: Decoder[A]): Future[EvaluationResponse[A]] = futureResponse map { case r if isSuccess(r.statusCode) ⇒ diff --git a/client/shared/src/main/scala/org/scalaexercises/evaluator/http/HttpRequestBuilder.scala b/client/shared/src/main/scala/org/scalaexercises/evaluator/http/HttpRequestBuilder.scala index bbbd4689..42a232ec 100644 --- a/client/shared/src/main/scala/org/scalaexercises/evaluator/http/HttpRequestBuilder.scala +++ b/client/shared/src/main/scala/org/scalaexercises/evaluator/http/HttpRequestBuilder.scala @@ -8,12 +8,13 @@ package org.scalaexercises.evaluator.http import org.scalaexercises.evaluator.http.HttpClient._ import scala.concurrent.Future - -import fr.hmil.roshttp.{HttpRequest, Method, HttpResponse} -import fr.hmil.roshttp.body.BodyPart - +import fr.hmil.roshttp.{HttpRequest, Method} +import fr.hmil.roshttp.body.BulkBodyPart +import fr.hmil.roshttp.response.SimpleHttpResponse import java.nio.ByteBuffer +import monix.execution.Scheduler.Implicits.global + case class HttpRequestBuilder( url: String, httpVerb: String, @@ -21,17 +22,17 @@ case class HttpRequestBuilder( body: String = "" ) { - case class CirceJSONBody(value: String) extends BodyPart { + case class CirceJSONBody(value: String) extends BulkBodyPart { override def contentType: String = s"application/json; charset=utf-8" - - override def content: ByteBuffer = ByteBuffer.wrap(value.getBytes("utf-8")) + override def contentData: ByteBuffer = + ByteBuffer.wrap(value.getBytes("utf-8")) } def withHeaders(headers: Headers) = copy(headers = headers) def withBody(body: String) = copy(body = body) - def run: Future[HttpResponse] = { + def run: Future[SimpleHttpResponse] = { val request = HttpRequest(url) .withMethod(Method(httpVerb)) diff --git a/project/EvaluatorBuild.scala b/project/EvaluatorBuild.scala index 00f995db..3a416d87 100644 --- a/project/EvaluatorBuild.scala +++ b/project/EvaluatorBuild.scala @@ -23,7 +23,7 @@ object EvaluatorBuild extends AutoPlugin { 'jwtcore -> "0.8.0", 'log4s -> "1.3.0", 'monix -> "2.0.3", - 'roshttp -> "1.1.0", + 'roshttp -> "2.0.0-RC1", 'scalacheck -> "1.12.5", 'scalaTest -> "2.2.6", 'slf4j -> "1.7.21" @@ -50,7 +50,7 @@ object EvaluatorBuild extends AutoPlugin { private[this] def baseSettings = Seq( - version := "0.1.1-SNAPSHOT", + version := "0.1.2-SNAPSHOT", organization := "org.scala-exercises", scalaVersion := "2.11.8", scalafmtConfig in ThisBuild := Some(file(".scalafmt")),