package Ġorg . know ledger . ledger . service . adapters Ċ Ċ import Ġorg . know ledger . ledger . adapters . Adapter Manager Ċ import Ġorg . know ledger . ledger . crypto . Hash Ċ import Ġorg . know ledger . ledger . database . Managed Session Ċ import Ġorg . know ledger . ledger . database . Storage Element Ċ import Ġorg . know ledger . ledger . database . Storage Type Ċ import Ġorg . know ledger . ledger . results . Outcome Ċ import Ġorg . know ledger . ledger . results . into Ledger Ċ import Ġorg . know ledger . ledger . results . map Failure Ċ import Ġorg . know ledger . ledger . results . map Success Ċ import Ġorg . know ledger . ledger . results . try Or Ledger Unknown Failure Ċ import Ġorg . know ledger . ledger . service . pools . transaction . Pool Transaction Ċ import Ġorg . know ledger . ledger . service . results . Ledger Failure Ċ import Ġorg . know ledger . ledger . storage . adapters . Transaction Storage Adapter Ċ Ċ internal Ġclass ĠPool Transaction Storage Adapter ( ĊĠĠĠ Ġprivate Ġval Ġadapter Manager : ĠAdapter Manager , ĊĠĠĠ Ġprivate Ġval Ġtransaction Storage Adapter : ĠTransaction Storage Adapter Ċ ) Ġ: ĠService Storage Adapter < Pool Transaction > Ġ{ ĊĠĠĠ Ġoverride Ġval Ġid : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ" Pool Transaction " ĊĠĠĠ Ġoverride Ġval Ġproperties : ĠMap < String , ĠStorage Type > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" transaction " Ġto ĠStorage Type . LINK , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" confirmed " Ġto ĠStorage Type . BOOLEAN ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun Ġstore ( ĊĠĠĠĠĠĠĠ Ġto Store : ĠPool Transaction , ĊĠĠĠĠĠĠĠ Ġsession : ĠManaged Session ĊĠĠĠ Ġ): ĠStorage Element Ġ= ĊĠĠĠĠĠĠĠ Ġsession ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. newInstance ( id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Linked ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" transaction ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Storage Adapter . persist ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Store . transaction , Ġsession ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). set Storage Property (" confirmed ", Ġto Store . confirmed ) ĊĊĠĠĠ Ġoverride Ġfun Ġload ( ĊĠĠĠĠĠĠĠ Ġledger Hash : ĠHash , ĊĠĠĠĠĠĠĠ Ġelement : ĠStorage Element ĊĠĠĠ Ġ): ĠOut come < Pool Transaction , ĠLed ger Failure > Ġ= ĊĠĠĠĠĠĠĠ Ġtry Or Ledger Unknown Failure Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= Ġelement . get Linked (" transaction ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconfirmed : ĠBoolean Ġ= Ġelement . get Storage Property (" confirmed ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction Storage Adapter . load ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġledger Hash , Ġtransaction ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). map Success Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPool Transaction ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirmed ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. map Failure Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . into Ledger () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ċ Ċ }