Browse Source

Finch 0.10.0

mfirry 9 years ago
parent
commit
c73a375db9

+ 5 - 5
frameworks/Scala/finch/build.sbt

@@ -9,11 +9,11 @@ com.github.retronym.SbtOneJar.oneJarSettings
 mainClass in (Compile, run) := Some("WebServer")
 mainClass in (Compile, run) := Some("WebServer")
 
 
 libraryDependencies ++= Seq(
 libraryDependencies ++= Seq(
-  "com.github.finagle" %% "finch-core" % "0.8.0",
-  "com.github.finagle" %% "finch-circe" % "0.8.0",
-  "io.circe" %% "circe-core" % "0.1.1",
-  "io.circe" %% "circe-generic" % "0.1.1",
-  "io.circe" %% "circe-jawn" % "0.1.1"
+  "com.github.finagle" %% "finch-core" % "0.10.0",
+  "com.github.finagle" %% "finch-circe" % "0.10.0"  ,
+  "io.circe" %% "circe-core" % "0.3.0",
+  "io.circe" %% "circe-generic" % "0.3.0",
+  "io.circe" %% "circe-jawn" % "0.3.0"
 )
 )
 
 
 resolvers += Resolver.sonatypeRepo("snapshots")
 resolvers += Resolver.sonatypeRepo("snapshots")

+ 7 - 10
frameworks/Scala/finch/src/main/scala/WebServer.scala

@@ -1,12 +1,9 @@
 import java.net.InetSocketAddress
 import java.net.InetSocketAddress
 
 
 import io.finch._
 import io.finch._
-import io.finch.route._
-import io.finch.response._
 
 
 import com.twitter.finagle.Service
 import com.twitter.finagle.Service
-import com.twitter.finagle.Httpx
-import com.twitter.finagle.httpx.{Response, Request}
+import com.twitter.finagle.Http
 
 
 import com.twitter.util.Await
 import com.twitter.util.Await
 
 
@@ -14,25 +11,25 @@ import io.circe._
 import io.circe.generic.auto._
 import io.circe.generic.auto._
 import io.circe.jawn._
 import io.circe.jawn._
 import io.circe.syntax._
 import io.circe.syntax._
-import io.finch.response.EncodeResponse
 import io.circe.{Decoder, Encoder, Json}
 import io.circe.{Decoder, Encoder, Json}
 
 
 object WebServer extends App {
 object WebServer extends App {
 
 
+  import io.finch.circe._
   val json = get("json") {
   val json = get("json") {
-    import io.finch.circe._
 
 
     case class Message(message: String)
     case class Message(message: String)
     Ok(Message("Hello, World!").asJson)
     Ok(Message("Hello, World!").asJson)
   }
   }
 
 
-  val plaintext = get("plaintext") {
-    "Hello, World!"
+  val plaintext: Endpoint[String] = get("plaintext") {
+    Ok("Hello, World!")
+      .withContentType(Some("text/plain"))
   }
   }
 
 
-  val api: Service[Request, Response] = (json :+: plaintext).toService
+  val api = json :+: plaintext
 
 
   Await.ready(
   Await.ready(
-    Httpx.serve(":9000", api)
+    Http.serve(":9000", api.toService)
   )
   )
 }
 }