Skip to content

Instantly share code, notes, and snippets.

@auryn31
Created June 25, 2019 09:16
Show Gist options
  • Save auryn31/e0220eb64b8a9e6171449ca253debff4 to your computer and use it in GitHub Desktop.
Save auryn31/e0220eb64b8a9e6171449ca253debff4 to your computer and use it in GitHub Desktop.
@Controller
class RestEndpoint {
@Autowired
lateinit var dataProvider: DataProvider
@GetMapping("/cars/sse")
fun getSseCars(response: HttpServletResponse): SseEmitter {
val emitter = SseEmitter()
dataProvider.getDataStream().subscribe({
emitter.send(SseEmitter.event().data(Klaxon().toJsonString(it), MediaType.APPLICATION_JSON))
}, ::println, {
emitter.send(SseEmitter.event().data("done"))
emitter.complete()
})
return emitter
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment