package Ġcom . sos zyn ski . mate us z . dot meme Ċ Ċ import Ġio . realm . Realm Ċ import Ġio . realm . Realm List Ċ import Ġio . realm . Realm Object Ċ import Ġio . realm . annotations . PrimaryKey Ċ import Ġio . realm . annotations . Required Ċ import Ġjava . io . File Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* Ġ[ Realm Object ] Ġclass Ġcontaining Ġone Ġme me . Ċ Ġ* Ċ Ġ* Ġ@ property ĠfilePath Ġpath Ġto Ġme me Ġfile Ġon Ġdevice . Ċ Ġ* Ġ@ property Ġraw Text Ġraw Ġtext Ġfrom Ġocr , Ġwithout Ġprocessing Ġor Ġautoc orre ction . Ċ Ġ* Ġ@ property Ġlabels Ġtags Ġor Ġlabels Ġto Ġme mes . ĠFor Ġexample , Ġdog , Ġman , Ġj acket , Ġsm ile , Ġsnow Ġetc . Ċ Ġ* Ġ@ property Ġis Sc anned Ġ[ Boolean ] Ġwhether Ġme me Ġwas Ġalready Ġscanned . Ċ Ġ* Ġ@ property Ġocr Version Ġit 's Ġnot Ġany Ġofficial Ġversion . ĠIf ĠO CR Ġgets Ġbetter , Ġwe Ġwill Ġjust Ġ+ 1 Ġthis , Ġand Ġre - scan Ġall Ġold . Ċ Ġ*/ Ċ open Ġclass ĠMe me Ġ: ĠRealm Object () Ġ{ ĊĠĠĠ Ġ@ PrimaryKey ĊĠĠĠ Ġ@ Required ĊĠĠĠ Ġvar ĠfilePath : ĠString Ġ= Ġ"" ĊĊĠĠĠ Ġvar Ġraw Text : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġlabels : ĠString Ġ= Ġ"" ĊĠĠĠ Ġvar Ġis Sc anned : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġvar Ġocr Version Ġ= Ġ 1 ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠFILE _ PATH Ġ= Ġ" filePath " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠRAW _ TEXT Ġ= Ġ" raw Text " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLABEL S Ġ= Ġ" labels " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠIS _ SCAN N ED Ġ= Ġ" is Sc anned " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠO CR _ VERSION Ġ= Ġ" ocr Version " ĊĠĠĠ Ġ} Ċ } Ċ Ċ open Ġclass ĠMe me Video Ġ: ĠRealm Object () Ġ{ ĊĠĠĠ Ġ@ PrimaryKey ĊĠĠĠ Ġ@ Required ĊĠĠĠ Ġvar ĠfilePath : ĠString Ġ= Ġ"" ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠFILE _ PATH Ġ= Ġ" filePath " ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* Ġ[ Realm Object ] Ġclass Ġcontaining Ġone Ġfolder Ġwith Ġimages Ġ- Ġor Ġme mes . Ċ Ġ* Ċ Ġ* Ġ@ property Ġfolder Path Ġpath Ġto Ġfolder Ġon Ġdevice . Ċ Ġ* Ġ@ property Ġis Sc ann able Ġ[ Boolean ] Ġwhether Ġto Ġscan Ġ[ me mes ] Ġinside Ġthis Ġfolder Ġor Ġnot . Ċ Ġ* Ġ@ property Ġsd Card Ġ[ Boolean ] Ġwhether Ġthis Ġfolder Ġis Ġon ĠSD Ġcard . Ċ Ġ* Ġ@ property Ġme mes Ġ[ Realm List ] Ġof Ġme mes Ġinside Ġthis Ġfolder . Ċ Ġ*/ Ċ open Ġclass ĠMe me Folder Ġ: ĠRealm Object () Ġ{ ĊĠĠĠ Ġ@ PrimaryKey ĊĠĠĠ Ġ@ Required ĊĠĠĠ Ġvar Ġfolder Path : ĠString Ġ= Ġ"" ĊĊĠĠĠ Ġvar Ġis Sc ann able : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġlast Sync : ĠDate Ġ= ĠDate ( 0 ) ĊĠĠĠ Ġvar Ġsd Card : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Official Ġ= Ġfalse ĊĠĠĠ Ġvar Ġme mes : ĠRealm List < Me me > Ġ= ĠRealm List () ĊĠĠĠ Ġvar Ġvideos : ĠRealm List < Me me Video > Ġ= ĠRealm List () ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠF OLDER _ PATH Ġ= Ġ" folder Path " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠIS _ SCAN N ABLE Ġ= Ġ" is Sc ann able " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠLAST _ SYNC Ġ= Ġ" last Sync " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠSD _ CARD Ġ= Ġ" sd Card " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠIS _ OFF IC IAL Ġ= Ġ" is Official " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠMEM ES Ġ= Ġ" me mes " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠV IDE OS Ġ= Ġ" videos " ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠComp anion Ġfunction Ġto Ġcheck Ġif Ġall Ġ[ Me me ] s Ġinside Ġgiven Ġ[ Me me Folder ] Ġare Ġscanned . ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġfolder Ġfolder Ġto Ġcheck . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġis Folder Fully Sc anned ( folder : ĠMe me Folder ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfolder . me mes . where (). equalTo ( Me me . IS _ SCAN N ED , Ġfalse ). count (). toInt () Ġ== Ġ 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ open Ġclass ĠMe me Roll Ġ: ĠRealm Object () Ġ{ ĊĠĠĠ Ġ@ PrimaryKey ĊĠĠĠ Ġvar Ġid Ġ= Ġ 1 ĊĊĠĠĠ Ġvar Ġroll : ĠRealm List < String > Ġ= ĠRealm List < String >() ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠR OL L Ġ= Ġ" roll " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠID Ġ= Ġ" id " ĊĊĠĠĠĠĠĠĠ Ġfun Ġcache Roll ( realm : ĠRealm , Ġroll : ĠList < File >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrealm . execute Transaction Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrealm Roll Ġ= Ġrealm . where ( Me me Roll :: class . java ). findFirst () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( realm Roll Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Realm Roll Ġ= ĠMe me Roll () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnew Realm Roll . roll . addAll ( roll . map Ġ{ Ġit . absolute Path Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrealm . copy To Realm ( new Realm Roll ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrealm Roll . roll . clear () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrealm Roll . roll . addAll ( roll . map Ġ{ Ġit . absolute Path Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ