package Ġcom . github . gu illa ume c 9 1 . core . servlet s Ċ Ċ import Ġcom . github . gu illa ume c 9 1 . core . servlet s . Simple Kotlin Servlet . Config Ċ import Ġorg . apache . sl ing . api . S ling HttpServletRequest Ċ import Ġorg . apache . sl ing . api . S ling HttpServletResponse Ċ import Ġorg . apache . sl ing . api . servlet s . Http Constants Ċ import Ġorg . apache . sl ing . api . servlet s . S ling Safe Methods Servlet Ċ import Ġorg . osgi . framework . Constants Ċ import Ġorg . osgi . service . component . annotations . Activate Ċ import Ġorg . osgi . service . component . annotations . Component Ċ import Ġorg . osgi . service . met atype . annotations . Attribute Definition Ċ import Ġorg . osgi . service . met atype . annotations . Design ate Ċ import Ġorg . osgi . service . met atype . annotations . Object Class Definition Ċ import Ġjava . io . IOException Ċ import Ġjavax . servlet . Servlet Ċ import Ġjavax . servlet . Servlet Exception Ċ Ċ private Ġconst Ġval ĠSER V LET _ PATHS Ġ= Ġ"/ bin / kotlin samples / simple kotlin servlet " Ċ Ċ /** Ċ Ġ* ĠSample ĠKotlin Ġbased ĠS ling Servlet Ġusing Ġa ĠJava Ċ Ġ* Ġannotation Ġclass Ġfor ĠOS GI Ġconfigurations Ċ Ġ*/ Ċ @ Design ate ( oc d Ġ= ĠConfig :: class ) Ċ @ Component ( service Ġ= Ġ[ Servlet :: class ], ĊĠĠĠĠĠĠĠ Ġproperty Ġ= Ġ[ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ Constants . SERVICE _ DESCRIPTION }= Simple ĠKotlin ĠServlet ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" sl ing . servlet . methods =${ Http Constants . METHOD _ GET }", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" sl ing . servlet . paths =$ SERV LET _ PATHS " ĊĠĠĠĠĠĠĠ Ġ]) Ċ open Ġclass ĠSimple Kotlin Servlet Ġ: ĠS ling Safe Methods Servlet () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġconfig : ĠConfig ? Ġ= Ġnull ; ĊĊĠĠĠ Ġ@ Object Class Definition ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" Sample ĠKotlin Ġservlet ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" Simple ĠKotlin Ġservlet Ġwith Ġconfigurable Ġproperties ") ĊĠĠĠ Ġannotation Ġclass Ġ ĠConfig Ġ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ get : Attribute Definition ( name Ġ= Ġ" A Ġparameter ", Ġdescription Ġ= Ġ" Configurable Ġparam ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmy Parameter Ġ: ĠString Ġ= Ġ" hello " ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Throws ( Servlet Exception :: class , ĠIOException :: class ) ĊĠĠĠ Ġpublic Ġoverride Ġfun Ġdo Get ( req : ĠS ling HttpServletRequest , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresp : ĠS ling HttpServletResponse ) Ġ{ ĊĠĠĠĠĠĠĠ Ġresp . contentType Ġ= Ġ" text / plain " ĊĠĠĠĠĠĠĠ Ġresp . writer . write (" Hello ĠWorld Ġin ĠKotlin , Ġmy Parameter : Ġ${ config ?. my Parameter }") ĊĠĠĠĠĠĠĠ Ġresp . writer . close () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Activate ĊĠĠĠ Ġfun Ġactivate ( config : ĠConfig ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . config Ġ= Ġconfig ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠserialVersionUID Ġ= Ġ 1 L ĊĠĠĠ Ġ} Ċ } Ċ