Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ project/plugins/project/
# Scala-IDE specific
.scala_dependencies
.worksheet
.idea

# Ensime
.ensime

# OSX
.DS_Store
Original file line number Diff line number Diff line change
Expand Up @@ -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 {

Expand All @@ -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) ⇒
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,30 +8,31 @@ 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,
headers: Headers = Map.empty[String, String],
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))
Expand Down
4 changes: 2 additions & 2 deletions project/EvaluatorBuild.scala
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand All @@ -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")),
Expand Down