X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FEventsProvider.ts;h=a47339b88e82675ab3dd8794a33a5702af50ecd4;hb=0fee03a8095f5599f8eccd920c1b1af6b3a20260;hp=d33cf1ed41eff24b99982b30b2400a9cd93bc499;hpb=9e8763c71cd61d55be7c869d973524f75209a3f3;p=ldk-java diff --git a/ts/structs/EventsProvider.ts b/ts/structs/EventsProvider.ts index d33cf1ed..a47339b8 100644 --- a/ts/structs/EventsProvider.ts +++ b/ts/structs/EventsProvider.ts @@ -32,11 +32,10 @@ import * as bindings from '../bindings' // TODO: figure out location const impl_holder: LDKEventsProviderHolder = new LDKEventsProviderHolder(); let structImplementation = { // todo: in-line interface filling - get_and_clear_pending_events (): number[] { - Event[] ret = arg.get_and_clear_pending_events(); - result: number[] = Arrays.stream(ret).map(arr_conv_7 -> arr_conv_7.ptr).toArray(number[]::new); - /* TODO 2 Event */; - return result; + process_pending_events (handler: number): void { + EventHandler ret_hu_conv = new EventHandler(null, handler); + ret_hu_conv.ptrs_to.add(this); + arg.process_pending_events(ret_hu_conv); }, @@ -46,23 +45,16 @@ import * as bindings from '../bindings' // TODO: figure out location } export interface EventsProviderInterface { - get_and_clear_pending_events(): Event[]; + process_pending_events(handler: EventHandler): void; } class LDKEventsProviderHolder { held: EventsProvider; } - public Event[] get_and_clear_pending_events() { - number[] ret = bindings.EventsProvider_get_and_clear_pending_events(this.ptr); - Event[] arr_conv_7_arr = new Event[ret.length]; - for (int h = 0; h < ret.length; h++) { - number arr_conv_7 = ret[h]; - Event arr_conv_7_hu_conv = Event.constr_from_ptr(arr_conv_7); - arr_conv_7_hu_conv.ptrs_to.add(this); - arr_conv_7_arr[h] = arr_conv_7_hu_conv; - } - return arr_conv_7_arr; + public void process_pending_events(EventHandler handler) { + bindings.EventsProvider_process_pending_events(this.ptr, handler == null ? 0 : handler.ptr); + this.ptrs_to.add(handler); } }