X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FEventsProvider.ts;h=a47339b88e82675ab3dd8794a33a5702af50ecd4;hb=0fee03a8095f5599f8eccd920c1b1af6b3a20260;hp=111c2a5b9cb8d5ad5c5455b868f6fb5857ef25e0;hpb=acecce750cf1159a51f9d1a4dbfd717520739e92;p=ldk-java diff --git a/ts/structs/EventsProvider.ts b/ts/structs/EventsProvider.ts index 111c2a5b..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[] = (number[])Arrays.stream(ret).map(arr_conv_7 -> arr_conv_7.ptr).toArray(); - /* 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); } }