package Ġ<%= ĠpackageName Ġ% >. core . data .< %= Ġentity Name Lower Ġ%> Ċ Ċ import Ġcom . gre eng row apps . gg arest . Web service Ċ import Ġcom . gre eng row apps . gg arest . listeners . On ListResponse Listener Ċ import Ġcom . gre eng row apps . gg arest . listeners . On Obj Response Listener Ċ import Ġcom . gre eng row apps . gg arest . listeners . On Response Listener Ċ import Ġcom . gre eng row apps . jh ius ers . J hi Users Ċ Ċ class Ġ<%= Ġentity Name Ġ%> Rest Resource ( private Ġval Ġurl : String , Ġprivate Ġval Ġweb service : ĠWeb service , Ġprivate Ġval Ġusers : ĠJ hi Users ){ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġresource Url Ġ= Ġ" api / <%= Ġentity Name Lower . replace (/ _/ g ,' - ') Ġ%> s " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġread List ( success : Ġ( List << %= Ġentity Name Ġ%> Dto >) Ġ-> ĠUnit , Ġerror : Ġ( statusCode : Int , Ġresponse : String ) Ġ-> ĠUnit ){ ĊĊĠĠĠĠĠĠĠ Ġweb service . get ("$ url /$ resource Url ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Content - Type "," application / json ; charset = UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Authorization ", Ġ" Bearer Ġ${ users . auth Token }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Success (< %= Ġentity Name Ġ%> Dto :: class . java , ĠOn ListResponse Listener { Ġcode , Ġitems , Ġfull Response Ġ-> Ġsuccess ( items ) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Other ( On Response Listener { code , Ġfull Response , Ġe Ġ-> Ġerror ( code , Ġfull Response . toString ()) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute () ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġread One ( id : Int , Ġsuccess : Ġ(< %= Ġentity Name Ġ%> Dto ) Ġ-> ĠUnit , Ġerror : Ġ( statusCode : Int , Ġresponse : String ) Ġ-> ĠUnit ){ ĊĊĠĠĠĠĠĠĠ Ġweb service . get ("$ url /$ resource Url /$ id ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Content - Type "," application / json ; charset = UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Authorization ", Ġ" Bearer Ġ${ users . auth Token }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Success (< %= Ġentity Name Ġ%> Dto :: class . java , ĠOn Obj Response Listener { Ġcode , Ġitem , Ġfull Response Ġ-> Ġsuccess ( item ) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Other ( On Response Listener { code , Ġfull Response , Ġe Ġ-> Ġerror ( code , Ġfull Response . toString ()) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute () ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġsave ( to Save : Ġ<%= Ġentity Name Ġ%> Dto , Ġsuccess : Ġ(< %= Ġentity Name Ġ%> Dto ) Ġ-> ĠUnit , Ġerror : Ġ( statusCode : Int , Ġresponse : String ) Ġ-> ĠUnit ){ ĊĊĠĠĠĠĠĠĠ Ġweb service . post ("$ url /$ resource Url ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Content - Type "," application / json ; charset = UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Authorization ", Ġ" Bearer Ġ${ users . auth Token }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Body ( to Save ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Response (< %= Ġentity Name Ġ%> Dto :: class . java , Ġ 2 0 1 , ĠOn Obj Response Listener { Ġcode , Ġitem , Ġfull Response Ġ-> Ġsuccess ( item ) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Other ( On Response Listener { code , Ġfull Response , Ġe Ġ-> Ġerror ( code , Ġfull Response . toString ()) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute () ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġupdate ( to Update : Ġ<%= Ġentity Name Ġ%> Dto , Ġsuccess : Ġ(< %= Ġentity Name Ġ%> Dto ) Ġ-> ĠUnit , Ġerror : Ġ( statusCode : Int , Ġresponse : String ) Ġ-> ĠUnit ){ ĊĊĠĠĠĠĠĠĠ Ġweb service . put ("$ url /$ resource Url ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Content - Type "," application / json ; charset = UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Authorization ", Ġ" Bearer Ġ${ users . auth Token }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Body ( to Update ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Success (< %= Ġentity Name Ġ%> Dto :: class . java , ĠOn Obj Response Listener { Ġcode , Ġitem , Ġfull Response Ġ-> Ġsuccess ( item ) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Other ( On Response Listener { code , Ġfull Response , Ġe Ġ-> Ġerror ( code , Ġfull Response . toString ()) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute () ĊĠĠĠ Ġ} ĊĠĠĠ Ġfun Ġdelete ( id : ĠLong , Ġsuccess : Ġ() Ġ-> ĠUnit , Ġerror : Ġ( statusCode : Int , Ġresponse : String ) Ġ-> ĠUnit ){ ĊĊĠĠĠĠĠĠĠ Ġweb service . delete ("$ url /$ resource Url /$ id ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Content - Type "," application / json ; charset = UTF - 8 ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Header (" Authorization ", Ġ" Bearer Ġ${ users . auth Token }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Success ({ Ġcode , Ġfull Response , Ġe Ġ-> Ġsuccess () Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. on Other ( On Response Listener { code , Ġfull Response , Ġe Ġ-> Ġerror ( code , Ġfull Response . toString ()) Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute () ĊĠĠĠ Ġ} Ċ } Ċ