X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FEvent.ts;h=a21ecbf320f8ac779a08f47cdf8194e8912dc8c2;hb=0fee03a8095f5599f8eccd920c1b1af6b3a20260;hp=36a548c89d7e5d287e7cdeb29202b92fa35c632e;hpb=99d1a3bd6dc5c7ed1499b30bfc2b4c66ffaf858a;p=ldk-java diff --git a/ts/structs/Event.ts b/ts/structs/Event.ts index 36a548c8..a21ecbf3 100644 --- a/ts/structs/Event.ts +++ b/ts/structs/Event.ts @@ -22,6 +22,9 @@ export default class Event extends CommonBase { if (raw_val instanceof bindings.LDKEvent.PaymentPathFailed) { return new PaymentPathFailed(this.ptr, raw_val); } + if (raw_val instanceof bindings.LDKEvent.PaymentFailed) { + return new PaymentFailed(this.ptr, raw_val); + } if (raw_val instanceof bindings.LDKEvent.PendingHTLCsForwardable) { return new PendingHTLCsForwardable(this.ptr, raw_val); } @@ -37,6 +40,9 @@ export default class Event extends CommonBase { if (raw_val instanceof bindings.LDKEvent.DiscardFunding) { return new DiscardFunding(this.ptr, raw_val); } + if (raw_val instanceof bindings.LDKEvent.PaymentPathSuccessful) { + return new PaymentPathSuccessful(this.ptr, raw_val); + } throw new Error('oops, this should be unreachable'); // Unreachable without extending the (internal) bindings interface } @@ -122,6 +128,15 @@ export class PaymentPathFailed extends Event { this.retry = retry_hu_conv; } } +export class PaymentFailed extends Event { + public payment_id: Uint8Array; + public payment_hash: Uint8Array; + private constructor(ptr: number, obj: bindings.LDKEvent.PaymentFailed) { + super(null, ptr); + this.payment_id = obj.payment_id; + this.payment_hash = obj.payment_hash; + } +} export class PendingHTLCsForwardable extends Event { public time_forwardable: number; private constructor(ptr: number, obj: bindings.LDKEvent.PendingHTLCsForwardable) { @@ -179,6 +194,30 @@ export class DiscardFunding extends Event { this.transaction = obj.transaction; } } +export class PaymentPathSuccessful extends Event { + public payment_id: Uint8Array; + public payment_hash: Uint8Array; + public path: RouteHop[]; + private constructor(ptr: number, obj: bindings.LDKEvent.PaymentPathSuccessful) { + super(null, ptr); + this.payment_id = obj.payment_id; + this.payment_hash = obj.payment_hash; + const path: number[] = obj.path; + RouteHop[] path_conv_10_arr = new RouteHop[path.length]; + for (int k = 0; k < path.length; k++) { + number path_conv_10 = path[k]; + const path_conv_10_hu_conv: RouteHop = new RouteHop(null, path_conv_10); + path_conv_10_hu_conv.ptrs_to.add(this); + path_conv_10_arr[k] = path_conv_10_hu_conv; + } + this.path = path_conv_10_arr; + } +} + public number clone_ptr() { + number ret = bindings.Event_clone_ptr(this.ptr); + return ret; + } + public Event clone() { number ret = bindings.Event_clone(this.ptr); Event ret_hu_conv = Event.constr_from_ptr(ret); @@ -187,28 +226,35 @@ export class DiscardFunding extends Event { } public static Event constructor_funding_generation_ready(Uint8Array temporary_channel_id, number channel_value_satoshis, Uint8Array output_script, number user_channel_id) { - number ret = bindings.Event_funding_generation_ready(temporary_channel_id, channel_value_satoshis, output_script, user_channel_id); + number ret = bindings.Event_funding_generation_ready(InternalUtils.check_arr_len(temporary_channel_id, 32), channel_value_satoshis, output_script, user_channel_id); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv; } public static Event constructor_payment_received(Uint8Array payment_hash, number amt, PaymentPurpose purpose) { - number ret = bindings.Event_payment_received(payment_hash, amt, purpose.ptr); + number ret = bindings.Event_payment_received(InternalUtils.check_arr_len(payment_hash, 32), amt, purpose.ptr); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv; } public static Event constructor_payment_sent(Uint8Array payment_id, Uint8Array payment_preimage, Uint8Array payment_hash, Option_u64Z fee_paid_msat) { - number ret = bindings.Event_payment_sent(payment_id, payment_preimage, payment_hash, fee_paid_msat.ptr); + number ret = bindings.Event_payment_sent(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_preimage, 32), InternalUtils.check_arr_len(payment_hash, 32), fee_paid_msat.ptr); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv; } public static Event constructor_payment_path_failed(Uint8Array payment_id, Uint8Array payment_hash, boolean rejected_by_dest, Option_NetworkUpdateZ network_update, boolean all_paths_failed, RouteHop[] path, Option_u64Z short_channel_id, RouteParameters retry) { - number ret = bindings.Event_payment_path_failed(payment_id, payment_hash, rejected_by_dest, network_update.ptr, all_paths_failed, path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null, short_channel_id.ptr, retry == null ? 0 : retry.ptr & ~1); + number ret = bindings.Event_payment_path_failed(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32), rejected_by_dest, network_update.ptr, all_paths_failed, path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null, short_channel_id.ptr, retry == null ? 0 : retry.ptr & ~1); + Event ret_hu_conv = Event.constr_from_ptr(ret); + ret_hu_conv.ptrs_to.add(ret_hu_conv); + return ret_hu_conv; + } + + public static Event constructor_payment_failed(Uint8Array payment_id, Uint8Array payment_hash) { + number ret = bindings.Event_payment_failed(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32)); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv; @@ -236,14 +282,21 @@ export class DiscardFunding extends Event { } public static Event constructor_channel_closed(Uint8Array channel_id, number user_channel_id, ClosureReason reason) { - number ret = bindings.Event_channel_closed(channel_id, user_channel_id, reason.ptr); + number ret = bindings.Event_channel_closed(InternalUtils.check_arr_len(channel_id, 32), user_channel_id, reason.ptr); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv; } public static Event constructor_discard_funding(Uint8Array channel_id, Uint8Array transaction) { - number ret = bindings.Event_discard_funding(channel_id, transaction); + number ret = bindings.Event_discard_funding(InternalUtils.check_arr_len(channel_id, 32), transaction); + Event ret_hu_conv = Event.constr_from_ptr(ret); + ret_hu_conv.ptrs_to.add(ret_hu_conv); + return ret_hu_conv; + } + + public static Event constructor_payment_path_successful(Uint8Array payment_id, Uint8Array payment_hash, RouteHop[] path) { + number ret = bindings.Event_payment_path_successful(InternalUtils.check_arr_len(payment_id, 32), InternalUtils.check_arr_len(payment_hash, 32), path != null ? Arrays.stream(path).map(path_conv_10 -> path_conv_10 == null ? 0 : path_conv_10.ptr & ~1).toArray(number[]::new) : null); Event ret_hu_conv = Event.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); return ret_hu_conv;