package Ġme . dr ton . jm av lib . internal Ċ Ċ import Ġandroid . content . Content Provider Ċ import Ġandroid . content . Content Values Ċ import Ġandroid . database . Cursor Ċ import Ġandroid . net . Uri Ċ import Ġandroid . util . Log Ċ import Ġme . dr ton . jm av lib . mav link . MA V Link Schema Registry Ċ Ċ private Ġval ĠTAG Ġ= ĠJ MA VL ib Init Provider :: class . simple Name Ċ private Ġconst Ġval ĠS CH EM AS Ġ= Ġ" schemas " Ċ Ċ class ĠJ MA VL ib Init Provider Ġ: ĠContent Provider () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassets . list ( SCH EM AS )?. forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfilename Parts Ġ= Ġit . split (".") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( filename Parts . size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM AV Link Schema Registry [ this , Ġfilename Parts [ 0 ]] Ġ= Ġ"$ SCH EM AS /$ it " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠLog . e ( TAG , Ġ" Skipping Ġinvalid Ġschema Ġfile Ġ'$ SCH EM AS /$ it '") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġquery ( uri : ĠUri , Ġprojection : ĠArray < out ĠString > ?, Ġselection : ĠString ?, Ġselection Args : ĠArray < out ĠString > ?, Ġsort Order : ĠString ?): ĠCursor ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġupdate ( uri : ĠUri , Ġvalues : ĠContent Values ?, Ġselection : ĠString ?, Ġselection Args : ĠArray < out ĠString >? ): ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġdelete ( uri : ĠUri , Ġselection : ĠString ?, Ġselection Args : ĠArray < out ĠString >? ): ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun ĠgetType ( uri : ĠUri ): ĠString ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġinsert ( uri : ĠUri , Ġvalues : ĠContent Values ?): ĠUri ? Ġ= Ġnull Ċ Ċ }