package Ġdg Ċ Ċ /** Ċ Ġ* ĠHold s Ġdata Ġfor Ġa Ġcard Ġrequest Ċ Ġ*/ Ċ data Ġclass ĠCard Request ( var Ġmerchant Ref Num : String ) Ġ{ ĊĊĠĠĠ Ġ@ Transient ĊĠĠĠ Ġvar Ġguid Ġ= Ġ"" Ġ// Ġfor Ġinternal Ġuse Ġonly Ġand Ġexcluded Ġfrom Ġthe Ġjson Ġrepresentation ĊĠĠĠ Ġvar Ġamount Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġset tle With Auth Ġ= Ġtrue ĊĠĠĠ Ġvar Ġcard Ġ= ĠCard () ĊĠĠĠ Ġvar Ġbilling Details Ġ= ĠBilling Details ("") ĊĊĠĠĠ Ġinner Ġclass ĠBilling Details ( var Ġzip : String ) ĊĊĠĠĠ Ġinner Ġclass ĠCard Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcard Num : String Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġcard Expiry Ġ= ĠCard Expiry (" "," ") ĊĊĠĠĠĠĠĠĠ Ġinner Ġclass ĠCard Expiry ( var Ġmonth : String , Ġvar Ġyear : String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject ĠFactory Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠCreates Ġan Ġinstance Ġof Ġthis Ġclass Ġbased Ġon ĠPayment Record ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate From ( record : ĠPayment Record ): ĠCard Request Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġreq Ġ= ĠCard Request ( record . merchant Ref Num ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreq . amount Ġ= Ġrecord . amount . toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreq . billing Details . zip Ġ= Ġrecord . postal Code ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreq . card . card Num Ġ= Ġrecord . card Number ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreq . card . card Expiry . month Ġ= Ġrecord . expiry Month ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreq . card . card Expiry . year Ġ= Ġrecord . expiry Year ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġreq ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }