Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def fullText(doi: String) = Action.async {
- val encodedDoi = URLEncoder.encode(doi, "UTF-8")
- val output = contentService.fullText(encodedDoi).map(_.right.flatMap(renderer.render))
- output.map(_.fold(errorResponse, okResponse))
- }
- def fullText2(doi: String) = Action.async{
- type ApiResponseToRenderResult = PartialFunction[Try[Either[Err, String]], Either[Err, String]]
- def getContent = contentService.fullText(URLEncoder.encode(doi, "UTF-8"))
- def renderIt: ApiResponseToRenderResult = {case Success(Right(xml)) => renderer.render(xml)}
- def resultToResponse: Either[Err, String] => Result = _.fold(errorResponse, okResponse)
- getContent andThen renderIt map resultToResponse
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement