package Ġorg . app jam . com man . network Ċ Ċ import Ġio . reactivex . Observable Ċ import Ġorg . app jam . com man . network . data .* Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . adapter . rx java 2 . Rx Java 2 Call Adapter Factory Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ import Ġretrofit 2 . http .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġj un ho e Ġon Ġ 2 0 1 8 . Ġ 1 . Ġ 4 .. Ċ Ġ*/ Ċ object ĠAP IC lient Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠbaseUrl Ġ= Ġ" http :// 1 3 . 1 2 5 . 3 5 . 2 1 4 : 3 0 0 0 " ĊĠĠĠ Ġval Ġapi Service Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( baseUrl ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Call Adapter Factory ( Rx Java 2 Call Adapter Factory . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create ( API Service :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠAPI Service Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ë¡ľ ê·¸ ìĿ¸ Ġí Ĩł íģ ° Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ POST ("/ users / insert _ user _ info ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Post Token (@ Body Ġlogin Data Ġ: ĠLogin Data . Login Post ) Ġ: ĠObservable < Login Data . Login Response > ĊĠĠĠĠĠĠĠ Ġ@ POST ("/ users / insert _ user _ info ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Post Token (@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Body Ġlogin Data Ġ: ĠLogin Data . Login Post ) Ġ: ĠObservable < Login Data . Login Response > ĊĊĊĠĠĠĠĠĠĠ Ġ// ìĪĺ ê° ķ ì¤ĳ ìĿ¸ Ġê° ķ ì¢ Į ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ users / main / progress Course /") ĊĠĠĠĠĠĠĠ Ġfun Ġget Registered Courses (@ Header (" authorization ") Ġtoken Value Ġ: ĠString ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Courses Response > ĊĊĠĠĠĠĠĠĠ Ġ// ì¹´ ëĵľ Ġë ī ´ ìĬ¤ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture picture /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget L ecture Cards (@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure ID : ĠInt ) Ġ: ĠObservable < Card Data . Card Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ id ë¡ľ Ġê° ķ ìĿĺ ìłķ ë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lect ures ") ĊĠĠĠĠĠĠĠ Ġfun Ġget L ecture Info (@ Header (" authorization ") Ġtoken Value Ġ: ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" lecture ID ") Ġlect ure ID : ĠInt ) Ġ: ĠObservable < L ecture Data . L ecture Response > ĊĊĠĠĠĠĠĠĠ Ġ// ì µľ ê·¼ Ġê° ķ ìĿĺ Ġìłķë³´ ìĸ » ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ users / lecture Recent Watch /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget Recent L ecture (@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure ID : ĠInt ) Ġ: ĠObservable < L ecture Data . Recent L ecture Response > ĊĊĠĠĠĠĠĠĠ Ġ// ì ± ķ íĦ° id ë¡ľ Ġì± ķ íĦ° ìłķ ë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / chapter s ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Chapter Info (@ Header (" authorization ") Ġtoken Value Ġ: ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" chapter ID ") Ġchapter ID : ĠInt ) Ġ: ĠObservable < Chapter Data . Info Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ íİ ĺìĿ´ ì§Ģ Ġì¤ĳ Ġê° ķ ìĿĺ ëª© ë¡Ŀ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture page / lecture List ") ĊĠĠĠĠĠĠĠ Ġfun Ġget L ecture List In Chapter (@ Header (" authorization ") Ġtoken Ġ: ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" chapter ID ") Ġchapter ID : ĠInt ) Ġ: ĠObservable < Chapter Data . L ecture List In Chapter Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ ìĹĲ ĠëĮĢíķľ Ġí Ģ ´ ì¦ Ī ìłķ ë³´ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture quiz /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget Quiz Result (@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure Id Ġ: ĠInt ) Ġ: Observable < Quiz Data . Quiz Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ì¢ Į ê² Ģ ìĥī ĊĠĠĠĠĠĠĠ Ġ@ POST ("/ search / courses ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Se ar ched Courses ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value Ġ: ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Body Ġsearch Post Ġ: ĠS ear ched Courses Data . Se ar ched Courses Post ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Se ar ched Courses Data . Se ar ched Courses Response > ĊĊĠĠĠĠĠĠĠ Ġ// ëĤ´ Ġê° ķ ì¢ Į ĠìĿ¸ ìĤ¬ ë§ Ĳ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ users / main / greeting ") ĊĠĠĠĠĠĠĠ Ġfun Ġget G reeting Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value Ġ: ĠString ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < G reeting Data . G reeting Response > ĊĊĠĠĠĠĠĠĠ Ġ// ìłĦ ì²´ Ġì¹ ´ íħ Į ê³ł ë¦¬ Ġìłķë³´ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / categories / course ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Category Infos ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken V ale Ġ: ĠString ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Category Data . Category Response > ĊĊĠĠĠĠĠĠĠ Ġ// ëĭ¤ ìĿĮ Ġê° ķ ìĿĺ Ġìłķë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture page / next L ecture ") ĊĠĠĠĠĠĠĠ Ġfun ĠgetNext L ecture Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value Ġ: ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" lecture ID ") Ġlect ure ID Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Next L ecture Data . Next L ecture Response > ĊĊĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ì¢ Į id ë¡ľ Ġê° ķ ì¢ Į ìłķ ë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / courses ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Popup Title Infos ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") token Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" course ID ") Ġcourse ID : Int ) Ġ: ĠObservable < Popup Data . Popup Title Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ì¢ Į ë³Ħ Ġì± ķ íĦ° ìłķ ë³´ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / courses /{ course ID }/ chapter s ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Popup Content Infos ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") token Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" course ID ") Ġcourse ID Ġ: Int ) Ġ: Observable < Popup Data . Popup Content Response > ĊĊĠĠĠĠĠĠĠ Ġ// ì¹´ íħ Į ê³ł ë¦¬ Ġê²Ģ ìĥī Ġê²°ê³¼ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ search / courses / categories /{ category ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget L ect ures Of Category ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" category ID ") Ġcategory ID Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Category Data . Courses Of Category Response > ĊĊĠĠĠĠĠĠĠ Ġ// ìľł ìłĢ ë³Ħ Ġê° ķ ì¢ Į Ġëĵ± ë¡Ŀ ĠìĹ¬ ë¶Ģ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ users / register /{ course ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġcheck Register Course ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" course ID ") Ġcourse ID Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Check Registered > ĊĊĠĠĠĠĠĠĠ Ġ// ìľł ìłĢ ë³Ħ Ġê° ķ ì¢ Į Ġêµ¬ ë§¤ ĠìĹ¬ ë¶Ģ ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ users / purchase /{ course ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġcheck Purchase Course ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" course ID ") Ġcourse ID Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Check Purchase d > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ì¢ Į id ë¡ľ Ġê° ķ ì¢ Į Ġìłķë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / courses ") ĊĠĠĠĠĠĠĠ Ġfun Ġget Course Meta Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Query (" course ID ") Ġcourse ID Ġ: ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Course Meta Response > ĊĊĠĠĠĠĠĠĠ Ġ// ìľł ìłĢ ë³Ħ Ġê° ķ ì¢ Į Ġêµ¬ ë§¤ ĊĠĠĠĠĠĠĠ Ġ@ PUT ("/ users / purchase /{ course ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġpurchase Course ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" course ID ") Ġcourse ID Ġ: Int ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Purchase Course > ĊĊĠĠĠĠĠĠĠ Ġ// ìľł ìłĢ ë³Ħ Ġê° ķ ì¢ Į Ġëĵ± ë¡Ŀ ĊĠĠĠĠĠĠĠ Ġ@ POST ("/ users / register ") ĊĠĠĠĠĠĠĠ Ġfun Ġregister Course ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Body Ġregister Data Ġ: ĠCour ses Data . Register Post ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Courses Data . Register Course > ĊĊĠĠĠĠĠĠĠ Ġ// ìľł ìłĢ ìĿĺ ĠìĪĺ ê° ķ Ġì¢ ħ ë£Į Ġê° ± ìĭł ĊĠĠĠĠĠĠĠ Ġ@ PUT ("/ users / lecture History /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġregister Finish L ecture ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure ID : ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < L ecture Data . Finish L ecture > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ ID ë¡ľ Ġë¹Ħ ëĶĶ ìĺ¤ ê° ķ ìĿĺ ìłķ ë³´ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture video /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget Video L ecture Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure ID : ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Video Data . Video L ecture Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ ID ë¡ľ Ġì§ Ī ë¬¸ , Ġëĭ µ ë³Ģ Ġê°Ģ ìł¸ ìĺ¤ ê¸° ĊĠĠĠĠĠĠĠ Ġ@ GET ("/ content / lecture question /{ lecture ID }") ĊĠĠĠĠĠĠĠ Ġfun Ġget Question Of L ecture ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Path (" lecture ID ") Ġlect ure ID : ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Question Data . Question Response > ĊĊĠĠĠĠĠĠĠ Ġ// ê° ķ ìĿĺ ID ë¡ľ Ġì§ Ī ë¬¸ ĠDB ìĹĲ ĠìĤ ½ ìŀħ ĊĠĠĠĠĠĠĠ Ġ@ POST ("/ content / lecture question / insert question ") ĊĠĠĠĠĠĠĠ Ġfun Ġregister Question ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Header (" authorization ") Ġtoken Value : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Body Ġquestion Post Ġ: ĠQuestion Data . Question Post ĊĠĠĠĠĠĠĠ Ġ) Ġ: ĠObservable < Question Data . Register Question Response > ĊĠĠĠ Ġ} Ċ }