package Ġio . sk rot . api Ċ Ċ import Ġjavax . ws . rs .* Ċ import Ġjavax . ws . rs . core . MediaType Ċ Ċ @ Path ("/ names ") Ċ class ĠNames Component Ġ{ ĊĊĠĠĠ Ġdata Ġclass ĠPerson ( val Ġname : ĠString ) ĊĠĠĠ Ġdata Ġclass ĠList Response ( val Ġpeople : ĠList < Person >) ĊĊĠĠĠ Ġprivate Ġvar Ġpeople Ġ= Ġmutable ListOf < Person >() ĊĊĠĠĠ Ġ@ Path ("/") ĊĠĠĠ Ġ@ GET Ġ@ Produces ( MediaType . APPLICATION _ JSON ) ĊĠĠĠ Ġfun Ġlist (): ĠList Response Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠList Response ( people ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Path ("/") ĊĠĠĠ Ġ@ POST Ġ@ Cons umes ( MediaType . APPLICATION _ JSON ) ĊĠĠĠ Ġfun Ġadd ( person : ĠPerson ) Ġ{ ĊĠĠĠĠĠĠĠ Ġpeople . add ( person ) ĊĠĠĠ Ġ} Ċ }