package Ġde . dd k fm . plan 4 ba . controller Ċ Ċ import Ġde . dd k fm . plan 4 ba . models . App Version Ċ import Ġde . dd k fm . plan 4 ba . models . NotFound Ċ import Ġde . dd k fm . plan 4 ba . models . database . Hibernate App Version Ċ import Ġde . dd k fm . plan 4 ba . utils . in Session Ċ import Ġde . dd k fm . plan 4 ba . utils . list Ċ import Ġde . dd k fm . plan 4 ba . utils . single Ċ import Ġspark . Request Ċ import Ġspark . Response Ċ import Ġjavax . ws . rs . GET Ċ import Ġjavax . ws . rs . Path Ċ import Ġjavax . ws . rs . Path Param Ċ Ċ @ Path ("/ app ") Ċ class ĠApp Controller ( req Ġ: ĠRequest , Ġresp Ġ: ĠResponse ) Ġ: ĠController Interface ( req Ġ= Ġreq , Ġresp Ġ= Ġresp ) Ġ{ ĊĊĠĠĠ Ġ@ GET ĊĠĠĠ Ġ@ Path ("") ĊĠĠĠ Ġfun Ġall App Versions () Ġ: ĠList < App Version > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġversions Ġ= Ġin Session Ġ{ Ġit . list < Hibernate App Version >() Ġ} Ġ?: Ġempty List () ĊĠĠĠĠĠĠĠ Ġreturn Ġversions . map Ġ{ Ġit . to Model () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ GET ĊĠĠĠ Ġ@ Path ("/ : id ") ĊĠĠĠ Ġfun Ġget Version (@ Path Param (" id ") Ġid Ġ: ĠInt ) Ġ: ĠApp Version Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġin Session Ġ{ Ġit . single < Hibernate App Version >( id ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . to Model () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġthrow ĠNotFound () ĊĠĠĠ Ġ} Ċ } ĊĊ