package Ġcom . air wal lex . android . view Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . os . Parcel Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . air wal lex . android . core . Air wal lex Session Ċ import Ġcom . air wal lex . android . core . exception . Air wal lex Exception Ċ import Ġcom . air wal lex . android . core . model .* Ċ import Ġcom . air wal lex . android . ui . Air wal lex Activity Launch Ċ import Ġcom . air wal lex . android . view . Payment Methods Activity Launch . Args Ċ import Ġkotlinx . parcel ize . Parcel er Ċ import Ġkotlinx . parcel ize . Parcel ize Ċ Ċ class ĠPayment Methods Activity Launch Ġ: ĠAir wal lex Activity Launch < Payment Methods Activity , ĠArgs > Ġ{ ĊĊĠĠĠ Ġconstructor ( activity : ĠActivity ) Ġ: Ġsuper ( ĊĠĠĠĠĠĠĠ Ġactivity , ĊĠĠĠĠĠĠĠ ĠPayment Methods Activity :: class . java , ĊĠĠĠĠĠĠĠ ĠREQUEST _ CODE ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġconstructor ( fragment : ĠFragment ) Ġ: Ġsuper ( ĊĠĠĠĠĠĠĠ Ġfragment , ĊĠĠĠĠĠĠĠ ĠPayment Methods Activity :: class . java , ĊĠĠĠĠĠĠĠ ĠREQUEST _ CODE ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Parcel ize ĊĠĠĠ Ġdata Ġclass ĠArgs Ġinternal Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġval Ġsession : ĠAir wal lex Session ĊĠĠĠ Ġ) Ġ: ĠAir wal lex Activity Launch . Args Ġ{ ĊĊĠĠĠĠĠĠĠ Ġclass ĠBuilder Ġ: ĠObject Builder < Args > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġlateinit Ġvar Ġsession : ĠAir wal lex Session ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġset Air wal lex Session ( session : ĠAir wal lex Session ): ĠBuilder Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . session Ġ= Ġsession ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġbuild (): ĠArgs Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠArgs ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsession Ġ= Ġsession ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinternal Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġfun Ġget Extra ( intent : ĠIntent ): ĠArgs Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġrequire NotNull ( intent . get Parcelable Extra ( Air wal lex Activity Launch . Args . AIR WAL LEX _ EXTRA )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Parcel ize ĊĠĠĠ Ġinternal Ġdata Ġclass ĠResult Ġinternal Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġval Ġpayment Intent Id : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġpayment MethodType : ĠPayment MethodType ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġexception : ĠAir wal lex Exception ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġpayment Method : ĠPayment Method ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġpayment Consent Id : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġc vc : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġ) Ġ: ĠAir wal lex Activity Launch . Result Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġto Bundle (): ĠBundle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠBundle (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . put Parcelable ( Air wal lex Activity Launch . Result . AIR WAL LEX _ EXTRA , Ġthis ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinternal Ġcompanion Ġobject Ġ: ĠParcel er < Result > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate ( parcel : ĠParcel ): ĠResult Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpayment Intent Id Ġ= Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpayment MethodType Ġ= Ġparcel . read Parcelable ( Payment MethodType :: class . java . class Loader ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexception Ġ= Ġparcel . read Serializable () Ġas ? ĠAir wal lex Exception ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpayment Method Ġ= Ġparcel . read Parcelable ( PaymentMethod :: class . java . class Loader ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpayment Consent Id Ġ= Ġparcel . readString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġc vc Ġ= Ġparcel . readString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠResult . write ( parcel : ĠParcel , Ġflags : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . writeString ( payment Intent Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . write Parcelable ( payment MethodType , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . write Serializable ( exception ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . write Parcelable ( payment Method , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . writeString ( payment Consent Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparcel . writeString ( cv c ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġfrom Intent ( intent : ĠIntent ?): ĠResult ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġintent ?. get Parcelable Extra ( Air wal lex Activity Launch . Result . AIR WAL LEX _ EXTRA ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠREQUEST _ CODE : ĠInt Ġ= Ġ 1 0 0 1 ĊĠĠĠ Ġ} Ċ } Ċ