/******************************************************************************* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 ĠAll an ĠY osh io ĠH ase g awa Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ******************************************************************************/ Ċ package Ġcom . h ase g awa . di . server . da os Ċ Ċ import Ġcom . h ase g awa . di . server . auth s . User Ċ import Ġorg . sk ife . j db i . v 2 . Statement Context Ċ import Ġorg . sk ife . j db i . v 2 . sq lo bject . Bind Ċ import Ġorg . sk ife . j db i . v 2 . sq lo bject . Sql Query Ċ import Ġorg . sk ife . j db i . v 2 . sq lo bject . custom izers . Register Mapper Ċ import Ġorg . sk ife . j db i . v 2 . tweak . ResultSet Mapper Ċ import Ġjava . sql . ResultSet Ċ import Ġjava . util .* Ċ Ċ @ Register Mapper ( User Mapper :: class ) Ċ interface ĠUsers Dao Ġ{ ĊĠĠĠ Ġ@ Sql Query (" select Ġ* Ġfrom Ġ$ TABLE _ NAME Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" where Ġ$ COL _ USERNAME = :$ COL _ USERNAME ") ĊĠĠĠ Ġfun ĠfindBy Username (@ Bind ( COL _ USERNAME ) Ġusername : ĠString ): ĠUser ? ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠTABLE _ NAME Ġ= Ġ" users " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCOL _ ID Ġ= Ġ" id " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCOL _ USERNAME Ġ= Ġ" username " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCOL _ PASSWORD _ HASH Ġ= Ġ" password _ hash " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCOL _ ROLE _ LEVEL Ġ= Ġ" role _ level " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCOL _ PUBLIC _ NAME Ġ= Ġ" public _ name " ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠUser Mapper Ġ: ĠResultSet Mapper < User > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġmap ( index : ĠInt , Ġr : ĠResultSet ?, Ġctx : ĠStatement Context ?): ĠUser ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠUser ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġr !!. getObject ( Users Dao . COL _ ID ) Ġas ĠUUID , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġr . getString ( Users Dao . COL _ USERNAME ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġr . getString ( Users Dao . COL _ PASSWORD _ HASH ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUser . Role . from Int ( r . getInt ( Users Dao . COL _ ROLE _ LEVEL )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġr . getString ( Users Dao . COL _ PUBLIC _ NAME ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ