/* Ċ Ġ* Ġ================================================= Ċ Ġ* ĠMock ifer ĠLicense Ċ Ġ* Ġ================================================= Ċ Ġ* Ċ Ġ* ĠMIT ĠLicense Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 7 ĠMar cel ĠB rag het to Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ċ Ġ* Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ċ Ġ* Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ċ Ġ* Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ċ Ġ* Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ċ Ġ* Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : ĊĊ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ċ Ġ* Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . ĊĊ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE Ċ Ġ* ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ Ġ* ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , Ċ Ġ* ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE Ċ Ġ* ĠSOFTWARE . Ċ Ġ* Ċ Ġ*/ Ċ Ċ package Ġmock ifer . core Ċ Ċ import Ġmock ifer . api . cats . C ats Api Ċ import Ġmock ifer . api . cats . C ats Repository Ċ import Ġmock ifer . api . mock ifer . Mock ifer Api Ċ import Ġmock ifer . core . framework . to Long DateString Ċ import Ġmock ifer . core . model . Header Ċ import Ġmock ifer . core . model . Request Ċ import Ġmock ifer . core . model . Request Controller Ċ import Ġkotlin . js . Date Ċ Ċ class ĠServer Session ( val Ġcats Repository : ĠC ats Repository Ġ= ĠC ats Repository ()) Ġ{ ĊĊĠĠĠ Ġval Ġformatted Server Time Ġget () Ġ= ĠDate (). to Long DateString () ĊĊĠĠĠ Ġfun Ġcreate Response Headers ( request : ĠRequest ? Ġ= Ġnull ): ĠArray < Header > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse Headers Ġ= Ġmutable Map Of < String , ĠString >() ĊĠĠĠĠĠĠĠ Ġresponse Headers [ Header . HEADER _ CONNECTION ] Ġ= ĠHeader . VALUE _ CLOSE ĊĊĠĠĠĠĠĠĠ Ġ// ĠAdd Ġany Ġresponse Ġheaders Ġthat Ġshould Ġbe Ġreturned . ĊĠĠĠĠĠĠĠ Ġresponse Headers [" Mock ifer "] Ġ= Ġ" Power ed Ġby ĠMock ifer !" ĊĊĠĠĠĠĠĠĠ Ġreturn Ġresponse Headers . entries . map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHeader ( it . key , Ġit . value ) ĊĠĠĠĠĠĠĠ Ġ}. to Typed Array () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcreate Request Controller ( controller Id : ĠString ): ĠRequest Controller ? Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( controller Id . toLowerCase ()) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠMock ifer ĠAPI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" mock ifer . get all routes " Ġ-> Ġreturn ĠMock ifer Api . GetAll Routes Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" mock ifer . htm lex ample " Ġ-> Ġreturn ĠMock ifer Api . Html Example Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" mock ifer . get activ em ocks " Ġ-> Ġreturn ĠMock ifer Api . GetAll Active Mocks ( this ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠC ats ĠAPI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" cats . get all cats " Ġ-> Ġreturn ĠC ats Api . GetAll C ats Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" cats . cat details " Ġ-> Ġreturn ĠC ats Api . Cat Details Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" cats . create cat " Ġ-> Ġreturn ĠC ats Api . Create Cat Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" cats . update cat " Ġ-> Ġreturn ĠC ats Api . Update Cat Controller ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" cats . delete cat " Ġ-> Ġreturn ĠC ats Api . Delete Cat Controller ( this ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠN up , Ġd un no Ġwhat Ġcontroller Ġyou Ġwant Ġ... ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ