package Ġde . fl ori and oot z . vol ley ball . request Ċ Ċ import Ġandroid . net . Uri Ċ import Ġandroid . support . annotation . Raw Res Ċ import Ġcom . android . vol ley . Response Ċ import Ġde . fl ori and oot z . vol ley ball . parse . Parser Ċ import Ġcom . android . vol ley . Request Ġas ĠVol ley Request Ċ Ċ /** Ċ Ġ* ĠDon 't Ġconstruct Ġyourself . ĠInstead Ġuse : ĠRequest er . build () Ċ Ġ* ĠBuilds Ġa Ġrequest Ġand Ġexecutes Ġit Ġwith Ġthe ĠRequest er Ġwhen Ġ. send () Ġis Ġcalled . Ċ Ġ*/ Ċ class ĠRequest Builder < T > Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġrequest er : ĠRequest er ĊĠĠĠ Ġprivate Ġval Ġuri : ĠUri . Builder ĊĊĠĠĠ Ġval Ġparser : ĠParser < T > ĊĠĠĠ Ġval Ġurl : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġuri . build (). toString () ĊĊĠĠĠ Ġvar Ġmethod : ĠInt Ġ= ĠVol ley Request . Method . GET ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġvar Ġbody : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġvar Ġlistener : ĠResponse . Listener < T >? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġvar Ġerror Listener : ĠResponse . Error Listener ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġvar Ġrequest Strategy : ĠRequest Strategy Ġ= ĠRequest Strategy . VOL LE Y _ DEFAULT ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġvar Ġraw Android Resource : ĠInt ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDon 't Ġconstruct Ġyourself . ĠInstead Ġuse : ĠRequest er . build () ĊĠĠĠĠ Ġ* ĠBuilds Ġa Ġrequest Ġand Ġexecutes Ġit Ġwith Ġthe ĠRequest er Ġwhen Ġ. send () Ġis Ġcalled . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ requester ĠThe Ġrequest er Ġthis Ġrequest Ġwas Ġbuild Ġand Ġwill Ġbe Ġsent Ġwith . ĊĠĠĠĠ Ġ* Ġ@ param Ġurl ĠThe Ġurl Ġto Ġrequest ĊĠĠĠĠ Ġ* Ġ@ param Ġparser ĠEither Ġa Ġcustom Ġparser Ġby Ġimplementing Ġ{@ link ĠParser } Ġor Ġa Ġparser Ġfrom Ġthe Ġvol ley ball - library : ĊĠĠĠĠ Ġ* Ġ- ĠClass Parser ĊĠĠĠĠ Ġ* Ġ- ĠArray Parser ĊĠĠĠĠ Ġ* Ġ- ĠString Parser ĊĠĠĠĠ Ġ* Ġ- ĠVoid Parser ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ see ĠRequest er ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġconstructor ( requester : ĠRequest er , Ġurl : ĠString , Ġparser : ĠParser < T >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . requester Ġ= Ġrequest er ĊĠĠĠĠĠĠĠ Ġthis . uri Ġ= ĠUri . parse ( url ). build Up on () ĊĠĠĠĠĠĠĠ Ġthis . parser Ġ= Ġparser ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefault : ĠVol ley Request . Method . GET ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Method ( method : ĠInt ): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . method Ġ= Ġmethod ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġbody Ġadded Ġto Ġthe Ġrequest . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Body ( body : ĠString ?): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . body Ġ= Ġbody ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġcallback Ġfor Ġthe Ġparsed Ġresult Ġdata . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Listener ( listener : ĠResponse . Listener < T >? ): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . listener Ġ= Ġlistener ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġcallback Ġfor Ġany Ġ( http , Ġparsing , Ġ...) Ġerror . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠsetError Listener ( error Listener : ĠResponse . Error Listener ?): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . error Listener Ġ= Ġerror Listener ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefault : ĠRequest Strategy . VOL LE Y _ DEFAULT ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Request Strategy ( request Strategy : ĠRequest Strategy ): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . request Strategy Ġ= Ġrequest Strategy ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġresource Ġcontained Ġin Ġthe ĠA PK Ġto Ġbe Ġloaded Ġif Ġoffline Ġand Ġno Ġcache Ġavailable . ĠUseful Ġfor Ġfirst Ġstarts Ġof Ġthe Ġapplication . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġset Raw Android Resource (@ Raw Res Ġraw Android Resource : ĠInt ): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . raw Android Resource Ġ= Ġraw Android Resource ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠApp ends Ġa Ġquery Ġparameter Ġto Ġthe Ġurl . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġappend QueryParameter ( key : ĠString , Ġvalue : ĠString ): ĠRequest Builder < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġuri . append QueryParameter ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSends Ġthe Ġbuilt Ġrequest Ġvia Ġthe Ġrequest er . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġsend () Ġ{ ĊĠĠĠĠĠĠĠ Ġrequest er . send ( this ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ