Advertisement
Guest User

Which makes you puke less?

a guest
Aug 4th, 2014
226
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.71 KB | None | 0 0
  1.   def fullText(doi: String) = Action.async {
  2.     val encodedDoi = URLEncoder.encode(doi, "UTF-8")
  3.     val output = contentService.fullText(encodedDoi).map(_.right.flatMap(renderer.render))
  4.     output.map(_.fold(errorResponse, okResponse))
  5.   }
  6.  
  7.   def fullText2(doi: String) = Action.async{
  8.  
  9.     type ApiResponseToRenderResult = PartialFunction[Try[Either[Err, String]], Either[Err, String]]
  10.     def getContent = contentService.fullText(URLEncoder.encode(doi, "UTF-8"))
  11.     def renderIt: ApiResponseToRenderResult = {case Success(Right(xml)) => renderer.render(xml)}
  12.     def resultToResponse: Either[Err, String] => Result = _.fold(errorResponse, okResponse)
  13.  
  14.     getContent andThen renderIt map resultToResponse
  15.  
  16.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement