package Ġbr . com . ac mat tos . oct o . endpoint Ċ Ċ import Ġbr . com . ac mat tos . oct o . event . Event Service Ċ import Ġio . jav al in . Context Ċ Ċ /** Ċ Ġ* ĠDe als Ġwith ĠIssues ' Ġevent Ġdata Ġstored Ġby Ġthis Ġapplication . Ċ Ġ* Ċ Ġ* Ġ@ author Ġac mat tos Ċ Ġ* Ġ@ since Ġ 1 . 0 . 0 Ċ Ġ* Ġ@ property Ġservice ĠService Ġthat Ġdeals Ġwith ĠMongoDB . Ċ Ġ* Ġ@ constructor ĠCreates Ġan ĠIssue ĠEndpoint . Ċ Ġ*/ Ċ class ĠIssue Endpoint ( private Ġval Ġservice : ĠEvent Service ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠProcess ĠHTTP ĠGET Ġrequests Ġfor Ġhttp :// host : port / issues /< NUMBER >/ events ĊĠĠĠĠ Ġ* ĠFinds Ġissues Ġby Ġits ĠNUMBER . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġctx ĠProvides Ġaccess Ġto Ġfunctions Ġfor Ġhandling Ġthe Ġrequest Ġand ĊĠĠĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠ Ġresponse . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġget ( ctx : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġstatus : ĠInt ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġservice . findBy Number ( ctx . path Param (" number ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( events . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ 4 0 4 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" No Ġevents Ġfound Ġfor Ġnumber : Ġ${ ctx . path Param (" number ") }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . json ( events ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln (" Events Ġcaptured : Ġ${ events . size }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ 2 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ 5 0 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġctx . status ( status ) ĊĠĠĠ Ġ} Ċ }