package Ġorg . rd toolkit . interop Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġorg . rd toolkit . interop . translator . Interop Repository Ċ import Ġorg . rd toolkit . model . session .* Ċ import Ġorg . rd toolkit . ui . provision . Provision Activity Ċ Ċ const Ġval ĠACTION _ TEST _ PROV ISION Ġ= Ġ" org . rd toolkit . action . Provision " Ċ const Ġval ĠACTION _ TEST _ PROV ISION _ AND _ CAPTURE Ġ= Ġ" org . rd toolkit . action . Provision And Capture " Ċ const Ġval ĠACTION _ TEST _ CAPTURE Ġ= Ġ" org . rd toolkit . action . Capture " Ċ Ċ const Ġval ĠINTENT _ EXTRA _ R DT _ SESSION _ ID Ġ= Ġ" r dt _ session _ id " Ċ Ċ const Ġval ĠINTENT _ EXTRA _ R DT _ CONFIG _ B UNDLE Ġ= Ġ" r dt _ config _ bundle " Ċ const Ġval ĠINTENT _ EXTRA _ R DT _ SESSION _ B UNDLE Ġ= Ġ" r dt _ session _ bundle " Ċ Ċ const Ġval ĠINTENT _ EXTRA _ INPUT _ TRANSL ATOR Ġ= Ġ" r dt _ input _ translate " Ċ const Ġval ĠINTENT _ EXTRA _ OUTPUT _ SESSION _ TRANSL ATOR Ġ= Ġ" r dt _ output _ session _ translate " Ċ const Ġval ĠINTENT _ EXTRA _ OUTPUT _ RESULT _ TRANSL ATOR Ġ= Ġ" r dt _ output _ result _ translate " Ċ Ċ const Ġval ĠINTENT _ EXTRA _ RESPONSE _ TRANSL ATOR Ġ= Ġ" r dt _ output _ response _ translate " Ċ Ċ class ĠTest Intent Builder () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġintent Ġ= ĠIntent () ĊĠĠĠ Ġprivate Ġvar Ġconfig Bundle Ġ= ĠBundle () ĊĊĠĠĠ Ġfun Ġfor Provisioning () Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . action Ġ= ĠACTION _ TEST _ PROV ISION ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CONFIG _ SESSION _ TYPE , ĠSession Mode . TWO _ PHASE . name ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfor Capture () Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . action Ġ= ĠACTION _ TEST _ CAPTURE ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfor Provision And Capture () Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . action Ġ= ĠACTION _ TEST _ PROV ISION _ AND _ CAPTURE ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CONFIG _ SESSION _ TYPE , ĠSession Mode . ONE _ PHASE . name ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Classifier Behavior ( mode : ĠClass ifier Mode ) Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CLAS SI FIER _ MODE , Ġmode . name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġrequest Test Profile ( test Profile Ġ: ĠString ) Ġ: ĠTest Intent Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ PROV ISION _ MODE , ĠPro vision Mode . TEST _ PROFILE . name ) ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ PROV ISION _ MODE _ DATA , Ġtest Profile ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġrequest Profile Criteria ( tags Ġ: ĠString , Ġmode : ĠPro vision Mode ) Ġ: ĠTest Intent Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ PROV ISION _ MODE , Ġmode . name ) ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ PROV ISION _ MODE _ DATA , Ġtags ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Flavor One ( flavor Text Ġ: ĠString ) Ġ Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CONFIG _ FL AV OR _ TEXT _ ONE , Ġflavor Text ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Flavor Two ( flavor Text Ġ: ĠString ) Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CONFIG _ FL AV OR _ TEXT _ TWO , Ġflavor Text ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Result Response Translator ( response Translator Id Ġ: ĠString ) Ġ: ĠTest Intent Builder Ġ Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ OUTPUT _ RESULT _ TRANSL ATOR , Ġresponse Translator Id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset SessionId ( sessionId Ġ: ĠString ) Ġ: ĠTest Intent Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID , sessionId ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Calling Package ( packageId Ġ: ĠString ) Ġ: ĠTest Intent Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . get Bundle ( INT ENT _ EXTRA _ R DT _ CONFIG _ FLAGS ) !!. putString ( FLAG _ CALL ING _ PACKAGE , Ġpackage Id ) ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Hard Expiration () Ġ: ĠTest Intent Builder Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . get Bundle ( INT ENT _ EXTRA _ R DT _ CONFIG _ FLAGS ) !!. putString ( FLAG _ SESSION _ NO _ EXPI RATION _ OVERRIDE , ĠFLAG _ VALUE _ SET ); ĊĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġconfig Bundle . put Bundle ( INT ENT _ EXTRA _ R DT _ CONFIG _ FLAGS , ĠBundle ()) ĊĠĠĠĠĠĠĠ Ġconfig Bundle . putString ( INT ENT _ EXTRA _ R DT _ CLAS SI FIER _ MODE , ĠClass ifier Mode . PRE _ POP UL ATE . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbuild (): ĠIntent Ġ{ ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ CONFIG _ B UNDLE , Ġconfig Bundle ); ĊĠĠĠĠĠĠĠ Ġreturn Ġintent ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġprovision Intent ( context Ġ: ĠContext , Ġincoming : ĠIntent ) Ġ: ĠIntent Ġ{ ĊĠĠĠ Ġvar Ġto Bootstrap Ġ= Ġincoming ĊĠĠĠ Ġincoming . getString Extra ( INT ENT _ EXTRA _ INPUT _ TRANSL ATOR )?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġto Bootstrap Ġ= ĠInter op Repository (). get Translator ( it ). map ( incoming ) ĊĠĠĠĠĠĠĠ Ġto Bootstrap . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġincoming . getString Extra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID )) ĊĠĠĠ Ġ} ĊĠĠĠ Ġvar Ġto Return Ġ= ĠIntent ( context , ĠPro vision Activity :: class . java ) ĊĠĠĠ Ġbootstrap ( to Return , Ġto Bootstrap ) ĊĊĠĠĠ Ġreturn Ġto Return Ċ } Ċ Ċ fun Ġbootstrap ( new Intent : ĠIntent , Ġold Intent : ĠIntent ) Ġ{ ĊĠĠĠ Ġnew Intent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġold Intent . getString Extra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID )) ĊĊĠĠĠ Ġnew Intent . putExtra ( INT ENT _ EXTRA _ R DT _ CONFIG _ B UNDLE , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġold Intent . get Bundle Extra ( INT ENT _ EXTRA _ R DT _ CONFIG _ B UNDLE )) Ċ Ċ } Ċ Ċ fun Ġprovision Return Intent ( session Ġ: ĠTest Session ) Ġ: ĠIntent Ġ{ ĊĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID , Ġsession . sessionId ) ĊĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ B UNDLE , ĠSession To Bundle (). map ( session )) ĊĠĠĠ Ġreturn Ġintent Ċ } Ċ Ċ fun Ġcapture Return Intent ( session Ġ: ĠTest Session ) Ġ: ĠIntent Ġ{ ĊĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ ID , Ġsession . sessionId ) ĊĠĠĠ Ġintent . putExtra ( INT ENT _ EXTRA _ R DT _ SESSION _ B UNDLE , ĠSession To Bundle (). map ( session )) ĊĠĠĠ Ġreturn Ġintent Ċ } Ċ