package Ġcom . tech pr d . httpd . flutter _ httpd Ċ Ċ import Ġorg . json . JSONException Ċ import Ġorg . json . JSONObject Ċ import Ġandroid . provider . Media Store ĊĊ Ċ class ĠUtils Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġfun Ġget Query Columns ByType ( type : ĠQuery Type ): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . PH OTO _ AL BU M Ġ-> Ġget Photo Album Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . PH OTO Ġ-> Ġget Photo Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . VIDEO _ AL BU M Ġ-> Ġget Video Album Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . VIDEO Ġ-> Ġget Video Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . M US IC _ AL BU M _ COVER Ġ-> Ġget Music Album Cover Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . M US IC _ AL BU M Ġ-> Ġget Music Album Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . M US IC Ġ-> Ġget Music Columns () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠQuery Type . REC ENT _ FILE Ġ-> Ġget Recent File Columns () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġget Columns Keys ( columns : ĠJSONObject ): ĠArrayList < String > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolumn Keys Ġ= Ġarray ListOf < String >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġiterator Fields Ġ= Ġcolumns . keys () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( iterator Fields . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolumn Ġ= Ġiterator Fields . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolumn Keys . add ( column ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcolumn Keys ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġfun Ġget Columns Values ( columns : ĠJSONObject ): ĠArrayList < String > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolumn Values Ġ= Ġarray ListOf < String >() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġiterator Fields Ġ= Ġcolumns . keys () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( iterator Fields . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcolumn Ġ= Ġiterator Fields . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolumn Values . add ("" Ġ+ Ġcolumns . getString ( column )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcolumn Values ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Photo Album Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" id ", ĠMedia Store . Images . Image Columns . BUCKET _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" title ", ĠMedia Store . Images . Image Columns . BUCKET _ DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Video Album Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" id ", ĠMedia Store . Video . Video Columns . BUCKET _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" title ", ĠMedia Store . Video . Video Columns . BUCKET _ DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Music Album Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" id ", ĠMedia Store . Audio . Album Columns . AL BU M _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album ", ĠMedia Store . Audio . Album Columns . AL BU M ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" artist ", ĠMedia Store . Audio . Album Columns . AR TI ST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Photo Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . id ", ĠMedia Store . Images . Media ._ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" fileName ", ĠMedia Store . Images . Image Columns . DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput ( Media Store . Images . Image Columns . MIN I _ TH UMB _ MAGIC , ĠMedia Store . Images . Image Columns . MIN I _ TH UMB _ MAGIC ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . width ", ĠMedia Store . Images . Image Columns . WIDTH ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . height ", ĠMedia Store . Images . Image Columns . HEIGHT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album Id ", ĠMedia Store . Images . Image Columns . BUCKET _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" date . creation Date ", ĠMedia Store . Images . Image Columns . DATE _ TA KEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" float . latitude ", ĠMedia Store . Images . Image Columns . LAT IT UDE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" float . longitude ", ĠMedia Store . Images . Image Columns . LONG IT UDE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" native URL ", ĠMedia Store . Media Columns . DATA ) Ġ// Ġwill Ġnot Ġbe Ġreturned Ġto Ġjavascript ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Video Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . id ", ĠMedia Store . Video . Media ._ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" fileName ", ĠMedia Store . Video . Video Columns . DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput ( Media Store . Images . Image Columns . MIN I _ TH UMB _ MAGIC , ĠMedia Store . Images . Image Columns . MIN I _ TH UMB _ MAGIC ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . width ", ĠMedia Store . Video . Video Columns . WIDTH ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . height ", ĠMedia Store . Video . Video Columns . HEIGHT ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album Id ", ĠMedia Store . Video . Video Columns . BUCKET _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" date . creation Date ", ĠMedia Store . Video . Video Columns . DATE _ TA KEN ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" float . latitude ", ĠMedia Store . Video . Video Columns . LAT IT UDE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" float . longitude ", ĠMedia Store . Video . Video Columns . LONG IT UDE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" native URL ", ĠMedia Store . Media Columns . DATA ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Music Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . id ", ĠMedia Store . Audio . Media ._ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" artist ", ĠMedia Store . Audio . Media . AR TI ST ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album ", ĠMedia Store . Audio . Media . AL BU M ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" title ", ĠMedia Store . Audio . Media . TITLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album Id ", ĠMedia Store . Audio . Media . AL BU M _ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . duration ", ĠMedia Store . Audio . Media . DURATION ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" native URL ", ĠMedia Store . Media Columns . DATA ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . date _ added ", ĠMedia Store . Audio . Media . DATE _ AD DED ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" display _ name ", ĠMedia Store . Audio . Media . DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Music Album Cover Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album _ art ", ĠMedia Store . Audio . Album s . AL BU M _ ART ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album ", ĠMedia Store . Audio . Album s . AL BU M ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" album _ id ", ĠMedia Store . Audio . Album s ._ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Throws ( JSONException :: class ) ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Recent File Columns (): ĠJSONObject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠJSONObject () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . id ", ĠMedia Store . Files . File Columns ._ ID ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" title ", ĠMedia Store . Files . File Columns . TITLE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" mime ", ĠMedia Store . Files . File Columns . MIME _ TYPE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" display _ name ", ĠMedia Store . Files . File Columns . DISPLAY _ NAME ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" native URL ", ĠMedia Store . Files . File Columns . DATA ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . size ", ĠMedia Store . Files . File Columns . SIZE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . date _ added ", ĠMedia Store . Files . File Columns . DATE _ AD DED ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput (" int . date _ modified ", ĠMedia Store . Files . File Columns . DATE _ MODI FIED ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }