package Ġorg . jav am aster . fragment learning . service Ċ Ċ import Ġorg . jav am aster . fragment learning . data . entity .* Ċ import Ġorg . jav am aster . fragment learning . data . model . Ex ams Answer Ċ import Ġorg . jav am aster . fragment learning . data . model . Result Vo Ċ import Ġorg . jav am aster . fragment learning . data . model . Submit Answers Res Vo Ċ import Ġorg . lite pal . Lite Pal Ċ Ċ /** Ċ Ġ* Ġ@ author Ġy ud ong Ċ Ġ* Ġ@ date Ġ 2 0 1 9 / 8 / 1 8 Ċ Ġ*/ Ċ interface ĠLearn Service Ġ{ ĊĊĠĠĠ Ġfun Ġfind Topics List ( cache First : ĠBoolean ): ĠMutable List < Topics > ĊĊĠĠĠ Ġfun Ġfind Sections List ( topics Code : ĠString , Ġcache First : ĠBoolean ): ĠMutable List < Sections > ĊĊĠĠĠ Ġfun Ġfind K nowled ges List ( sections Code : ĠString , Ġcache First : ĠBoolean ): ĠMutable List < K nowled ges > ĊĊĠĠĠ Ġfun Ġfind K nowled ges Question Num ( sections Code : ĠString , Ġcache First : ĠBoolean ): ĠMutable Map < String , ĠInt > ĊĊĠĠĠ Ġfun Ġfind Knowledge Points List ( k nowled ges Code : ĠString ): ĠResult Vo < List < Knowledge Points >> ĊĊĠĠĠ Ġfun Ġfind Questions List ( questions Code : ĠString ): ĠResult Vo < List < Questions >> ĊĊĠĠĠ Ġfun Ġfind Associate Options ( questions Code : ĠString ): ĠResult Vo < List < Options >> ĊĊĠĠĠ Ġfun Ġfind Ex ams List ( cache First : ĠBoolean ): ĠMutable List < Ex ams > ĊĊĠĠĠ Ġfun Ġfind Questions By Ex ams Code ( ex ams Code : ĠString ): ĠResult Vo < List < Exam Questions Vo >> ĊĊĠĠĠ Ġfun Ġsave Le ar ns ( knowledge Points Code : ĠString ): ĠResult Vo < Int > ĊĊĠĠĠ Ġfun Ġfind Topics Progress ( cache First : ĠBoolean ): ĠMap < String , ĠInt > ĊĊĠĠĠ Ġfun Ġfind Sections Progress ( topics Code : ĠString , Ġcache First : ĠBoolean ): ĠMutable Map < String , ĠInt > ĊĊĠĠĠ Ġfun Ġsubmit Answers ( ex ams Code : ĠString , Ġex ams Answers : ĠList < Ex ams Answer >): ĠResult Vo < Submit Answers Res Vo > ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġget Exam Questions V os ( ex ams Code : ĠString ): ĠList < Exam Questions Vo > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexam Questions V os Ġ= ĠLite Pal . where (" ex ams Code = ?", Ġex ams Code ). find ( Exam Questions Vo :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( exam Questions V os . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexam Questions V os . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . options V os Ġ= ĠLite Pal . where (" questions Code = ?", Ġit . questions Code ). find ( Options Vo :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġexam Questions V os ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }