package Ġorg . ste ven low es . tools . gps database . server Ċ Ċ import Ġjava . math . BigDecimal Ċ import Ġjava . sql . PreparedStatement Ċ import Ġjava . sql . ResultSet Ċ import Ġjava . sql . Types Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠSte ven Ġon Ġ 1 8 / 0 7 / 2 0 1 7 . Ċ Ġ*/ Ċ fun ĠPreparedStatement . fill IDs ( ids : ĠCollection < Long >, Ġfirst Parameter Number : ĠInt Ġ= Ġ 1 ): ĠPreparedStatement Ġ{ ĊĠĠĠ Ġfor Ġ(( index , Ġid ) Ġin Ġids . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Long ( index Ġ+ Ġfirst Parameter Number , Ġid ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġthis Ċ } Ċ Ċ fun Ġparameter String ( number : ĠInt ): ĠString Ġ{ ĊĠĠĠ Ġval Ġs j Ġ= ĠString Join er (",", Ġ" (", Ġ") ") ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 1 .. number ) Ġ{ ĊĠĠĠĠĠĠĠ Ġs j . add (" ?") ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġs j . toString () Ċ } Ċ Ċ fun ĠString . replace In Tags ( numbers : ĠList < Int >): ĠString Ġ{ ĊĠĠĠ Ġvar Ġstring Ġ= Ġthis ĊĠĠĠ Ġnumbers . forEach Ġ{ Ġstring Ġ= Ġreplace First ("@ tag _ in ", Ġparameter String ( it )) Ġ} ĊĠĠĠ Ġreturn Ġstring Ċ } Ċ Ċ fun ĠPreparedStatement . set ( parameter Number : ĠInt , Ġvalue : ĠAny ?, Ġsql Type : ĠInt ) Ġ{ ĊĠĠĠ Ġif Ġ( value Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . set Null ( parameter Number , Ġsql Type ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( sql Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTypes . BIG INT Ġ-> Ġset Long ( parameter Number , Ġvalue Ġas ĠLong ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTypes . INTEGER Ġ-> Ġset Int ( parameter Number , Ġvalue Ġas ĠInt ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTypes . VARCHAR Ġ-> Ġset String ( parameter Number , Ġvalue Ġas ĠString ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTypes . BOOLEAN Ġ-> Ġset Boolean ( parameter Number , Ġvalue Ġas ĠBoolean ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTypes . DECIMAL Ġ-> Ġset BigDecimal ( parameter Number , Ġvalue Ġas ĠBigDecimal ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠResultSet . get Nullable Int ( columnName : ĠString ): ĠInt ? Ġ{ ĊĠĠĠ Ġval Ġint Ġ= Ġget Int ( columnName ) ĊĠĠĠ Ġreturn Ġif Ġ( was Null ()) Ġnull Ġelse Ġint Ċ } Ċ Ċ fun ĠResultSet . get Nullable Long ( columnName : ĠString ): ĠLong ? Ġ{ ĊĠĠĠ Ġval Ġlong Ġ= Ġget Long ( columnName ) ĊĠĠĠ Ġreturn Ġif Ġ( was Null ()) Ġnull Ġelse Ġlong Ċ } Ċ Ċ fun ĠResultSet . get Nullable BigDecimal ( columnName : ĠString ): ĠBigDecimal ? Ġ{ ĊĠĠĠ Ġval Ġdecimal Ġ= Ġget BigDecimal ( columnName ) ĊĠĠĠ Ġreturn Ġif Ġ( was Null ()) Ġnull Ġelse Ġdecimal Ċ } Ċ Ċ fun ĠResultSet . get Nullable String ( columnName : ĠString ): ĠString ? Ġ{ ĊĠĠĠ Ġval Ġstring Ġ= ĠgetString ( columnName ) ĊĠĠĠ Ġreturn Ġif Ġ( was Null ()) Ġnull Ġelse Ġstring Ċ } Ċ Ċ fun ĠResultSet . get Nullable Boolean ( columnName : ĠString ): ĠBoolean ? Ġ{ ĊĠĠĠ Ġval Ġboolean Ġ= Ġget Boolean ( columnName ) ĊĠĠĠ Ġreturn Ġif Ġ( was Null ()) Ġnull Ġelse Ġboolean Ċ }