package Ġcom . rim mer . metrics . server . generated . client Ċ Ċ import Ġorg . joda . time . DateTime Ċ import Ġio . netty . buffer . Byte Buf Ċ import Ġjava . util .* Ċ import Ġcom . rim mer . y tt rium .* Ċ import Ġcom . rim mer . y tt rium . serialize .* Ċ import Ġcom . rim mer . y tt rium . router . plugin . IPAddress Ċ import Ġcom . rim mer . metrics . generated . type .* Ċ Ċ import Ġcom . rim mer . y tt rium . server . binary . Binary Client Ċ import Ġcom . rim mer . metrics . server . generated . type .* Ċ Ċ fun ĠBinary Client . client Get Stats ( from : ĠLong , Ġto : ĠLong , Ġpassword : ĠString , Ġcallback : Ġ( List < Time Metric > ?, ĠThrowable ?) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġcall ( ĊĠĠĠĠĠĠĠĠ 8 9 6 0 7 3 6 4 1 , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheader 0 Ġ= Ġ 2 6 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Int ( header 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Long ( from ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Long ( to ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . writeString ( password ) ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue : ĠArrayList < Time Metric > Ġ= ĠArrayList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlength _ value Ġ= Ġthis . read Var Long () Ġ ush r Ġ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġi _ value Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile ( i _ value Ġ< Ġlength _ value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue !!. add ( Time Metric . from Binary ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi _ value ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue ĊĠĠĠĠĠĠĠ Ġ}, Ġcallback ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun ĠBinary Client . client Get Stats ( from : ĠLong , Ġto : ĠLong , Ġpassword : ĠString ): ĠTask < List < Time Metric >> Ġ{ ĊĠĠĠ Ġval Ġresult Task Ġ= ĠTask < List < Time Metric >>() ĊĠĠĠ Ġclient Get Stats ( from , Ġto , Ġpassword , Ġ{ Ġr , Ġe Ġ-> Ġif ( e Ġ=== Ġnull ) Ġresult Task . finish ( r !! ) Ġelse Ġresult Task . fail ( e ) Ġ}) ĊĠĠĠ Ġreturn Ġresult Task Ċ } Ċ Ċ fun ĠBinary Client . client Get Profile ( from : ĠLong , Ġto : ĠLong , Ġpassword : ĠString , Ġcallback : Ġ( List < Time Profile > ?, ĠThrowable ?) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġcall ( ĊĠĠĠĠĠĠĠĠ 1 9 6 3 8 9 9 6 3 5 , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheader 0 Ġ= Ġ 2 6 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Int ( header 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Long ( from ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Long ( to ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . writeString ( password ) ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue : ĠArrayList < Time Profile > Ġ= ĠArrayList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlength _ value Ġ= Ġthis . read Var Long () Ġ ush r Ġ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġi _ value Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile ( i _ value Ġ< Ġlength _ value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue !!. add ( Time Profile . from Binary ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi _ value ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue ĊĠĠĠĠĠĠĠ Ġ}, Ġcallback ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun ĠBinary Client . client Get Profile ( from : ĠLong , Ġto : ĠLong , Ġpassword : ĠString ): ĠTask < List < Time Profile >> Ġ{ ĊĠĠĠ Ġval Ġresult Task Ġ= ĠTask < List < Time Profile >>() ĊĠĠĠ Ġclient Get Profile ( from , Ġto , Ġpassword , Ġ{ Ġr , Ġe Ġ-> Ġif ( e Ġ=== Ġnull ) Ġresult Task . finish ( r !! ) Ġelse Ġresult Task . fail ( e ) Ġ}) ĊĠĠĠ Ġreturn Ġresult Task Ċ } Ċ Ċ fun ĠBinary Client . client GetError ( from : ĠLong , Ġpassword : ĠString , Ġcallback : Ġ( List < Error Class > ?, ĠThrowable ?) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġcall ( ĊĠĠĠĠĠĠĠ Ġ- 4 2 3 3 7 6 2 2 0 , Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheader 0 Ġ= Ġ 3 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Int ( header 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . write Var Long ( from ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . writeString ( password ) ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue : ĠArrayList < Error Class > Ġ= ĠArrayList () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlength _ value Ġ= Ġthis . read Var Long () Ġ ush r Ġ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġi _ value Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile ( i _ value Ġ< Ġlength _ value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue !!. add ( Error Class . from Binary ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi _ value ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue ĊĠĠĠĠĠĠĠ Ġ}, Ġcallback ĊĠĠĠ Ġ) Ċ } Ċ Ċ fun ĠBinary Client . client GetError ( from : ĠLong , Ġpassword : ĠString ): ĠTask < List < Error Class >> Ġ{ ĊĠĠĠ Ġval Ġresult Task Ġ= ĠTask < List < Error Class >>() ĊĠĠĠ Ġclient GetError ( from , Ġpassword , Ġ{ Ġr , Ġe Ġ-> Ġif ( e Ġ=== Ġnull ) Ġresult Task . finish ( r !! ) Ġelse Ġresult Task . fail ( e ) Ġ}) ĊĠĠĠ Ġreturn Ġresult Task Ċ } ĊĊ