Hi Roland,

I wasn't sure how to use the new streaming APIs from the spray DSL, so I 
used the akka-http core API instead:

  implicit val materializer = FlowMaterializer()

  val binding = Http().bind(interface = settings.interface, port = settings.
port)
  binding.connections.foreach { c ⇒
    logger.info(s"Accepted new connection from ${c.remoteAddress}")
    c.handleWithAsyncHandler {
      case HttpRequest(GET, uri, _, _, _)       ⇒ httpGet(uri)
      case HttpRequest(POST, uri, _, entity, _) ⇒ httpPost(uri, entity)
      case HttpRequest(HEAD, uri, _, _, _)      ⇒ httpHead(uri)
      case HttpRequest(DELETE, uri, _, _, _)    ⇒ httpDelete(uri)
      case _: HttpRequest                       ⇒ Future.successful(
HttpResponse(StatusCodes.NotFound, entity = "Unknown resource!"))
    }
  }

Is use of the spray DSL still encouraged or is it deprecated in favour of 
the above usage?

Thanks,
Allan

On Tuesday, January 20, 2015 at 1:10:56 PM UTC+1, rkuhn wrote:
>
> Hi Allan,
>
> there should in principle be a marshaller that wraps your Source into an 
> Entity, what is the exact error you are seeing?
>
> Regards,
>
> Roland
>
> 7 jan 2015 kl. 14:00 skrev Allan Brighton <alla...@gmail.com <javascript:>
> >:
>
> Hi,
>
> I know how to do this now using the new akka-http core API, but how would 
> it work using the spray-like DSL?
> How can I complete an http get using a Future[Source[ByteString]]?
>
> import akka.http.model._
> import akka.http.server._
> ...
>   def route: Route =
>     path("get") {
>       get {
>         parameters('path, 'id ?) { (path, id) =>
>           respondWithMediaType(`application/octet-stream`) {
>             complete {
>               val f: Future[Source[ByteString]] = ???
>               f.onComplete {
>                 case Success(source) => ...
>                 case Failure(ex) => ...
>               }
>             }
>           }
>         }
>       }
>     }
>
> I would also be interested in an example going the other way: implementing 
> an http post that receives data from a stream.
>
> Thanks,
> Allan
>
>
>
> -- 
> >>>>>>>>>> Read the docs: http://akka.io/docs/
> >>>>>>>>>> Check the FAQ: 
> http://doc.akka.io/docs/akka/current/additional/faq.html
> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
> --- 
> You received this message because you are subscribed to the Google Groups 
> "Akka User List" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to akka-user+...@googlegroups.com <javascript:>.
> To post to this group, send email to akka...@googlegroups.com 
> <javascript:>.
> Visit this group at http://groups.google.com/group/akka-user.
> For more options, visit https://groups.google.com/d/optout.
>
>
>
>
> *Dr. Roland Kuhn*
> *Akka Tech Lead*
> Typesafe <http://typesafe.com/> – Reactive apps on the JVM.
> twitter: @rolandkuhn
> <http://twitter.com/#!/rolandkuhn>
>  
>

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: 
>>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to