package Ġcom . t ange m . tasks . file Ċ Ċ import Ġcom . t ange m . Card Session Ċ import Ġcom . t ange m . Card Session Runnable Ċ import Ġcom . t ange m . commands . file .* Ċ import Ġcom . t ange m . common . Completion Result Ċ Ċ /** Ċ Ġ* ĠThis Ġtask Ġallows Ġto Ġchange Ġsettings Ġof Ġmultiple Ġfiles Ġwritten Ġto Ġthe Ġcard Ġwith Ġ[ WriteFile Data Command ]. Ċ Ġ* ĠPass code Ġ( PIN 2 ) Ġis Ġrequired Ġfor Ġthis Ġoperation . Ċ Ġ* Ġ[ File Settings ] Ġchange Ġaccess Ġlevel Ġto Ġa Ġfile Ġ- Ġit Ġcan Ġbe Ġ[ File Settings . Private ], Ċ Ġ* Ġaccessible Ġonly Ġwith ĠPIN 2 , Ġor Ġ[ File Settings . Public ], Ġaccessible Ġwithout ĠPIN 2 Ċ Ġ* Ċ Ġ* Ġ@ property Ġchanges Ġcontains Ġlist Ġof Ġ[ File Settings Change ] Ġ- Ċ Ġ* Ġindices Ġof Ġfiles Ġthat Ġare Ġto Ġbe Ġchanged Ġand Ġdesired Ġsettings . Ċ Ġ*/ Ċ class ĠChange Files Settings Task ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġchanges : ĠList < File Settings Change > Ċ ) Ġ: ĠCard Session Runnable < Change File Settings Response > Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġrequires Pin 2 Ġ= Ġtrue ĊĊĠĠĠ Ġprivate Ġvar ĠcurrentIndex Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġrun ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsession : ĠCard Session , Ġcallback : Ġ( result : ĠCompletion Result < Change File Settings Response >) Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġchange Settings ( session , Ġcallback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġchange Settings ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsession : ĠCard Session , Ġcallback : Ġ( result : ĠCompletion Result < Change File Settings Response >) Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠChange File Settings Command ( changes [ currentIndex ]). run ( session ) Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠCompletion Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( currentIndex Ġ== Ġchanges . last Index ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠcurrentIndex Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchange Settings ( session , Ġcallback ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠCompletion Result . Failure Ġ-> Ġcallback ( result ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }