% git clone https://github.com/twitter/finagle.git
% cd finagle/doc/src/sphinx/code/quickstart/
% sbt console
scala> import com.twitter.finagle.{Http, Service}
import com.twitter.finagle.{Http, Service}
scala> import com.twitter.finagle.http
import com.twitter.finagle.http
scala> import com.twitter.util.{Await, Future}
import com.twitter.util.{Await, Future}
scala> val client: Service[http.Request, http.Response] = Http.newService("www.scala-lang.org:80")
4 1, 2016 00:00:00 午前 com.twitter.finagle.Init$$anonfun$1 apply$mcV$sp
情報: Finagle version 6.34.0 (rev=44f444f606b10582c2da8d5770b7879ddd961211) built at 20160310-155158
client: com.twitter.finagle.Service[com.twitter.finagle.http.Request,com.twitter.finagle.http.Response] = <function1>
scala> val request = http.Request(http.Method.Get, "/")
request: com.twitter.finagle.http.Request = Request("GET /", from 0.0.0.0/0.0.0.0:0)
scala> request.host = "www.scala-lang.org"
request.host: Option[String] = Some(www.scala-lang.org)
scala> val response: Future[http.Response] = client(request)
response: com.twitter.util.Future[com.twitter.finagle.http.Response] = Promise@16606747(state=Transforming(List(),Future@1633934466(depth=2,parent=Promise@1407771348(state=Transforming(List(<function1>, <function1>, <function1>),Promise@175693394(state=Transforming(List(<function1>),Future@1641987256(depth=1,parent=Promise@514255821(state=Transforming(List(<function1>, <function1>),Promise@181163151(state=Transforming(List(<function1>),Promise@1175093706(state=Transforming(List(<function1>),Promise@1378213583(state=Transforming(List(<function1>),Future@2079637445(depth=1,parent=Promise@326427672(state=Transforming(List(<function1>, <function1>),Promise@31601517(state=Transforming(List(<function1>),Promise@2110608952(state=Transforming(List(<function1>),Promise@597279955(state=Transformi...
scala> Await.result(response.onSuccess { rep: http.Response =>
| println("GET success: " + rep)
| })
GET success: Response("HTTP/1.1 Status(200)")
res0: com.twitter.finagle.http.Response = Response("HTTP/1.1 Status(200)")