X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fldk%2Fstructs%2FPaymentPurpose.java;h=10bce2748752794520fb4bb31339dbc125da081c;hb=1854b5cebef22ace9e9e4dd191f609818df9ce08;hp=3c404af41509d6c46bbeeff8185714826b075b43;hpb=5fd405f7a48aaeca779c45c88ec6b3d3d3dbf0e4;p=ldk-java diff --git a/src/main/java/org/ldk/structs/PaymentPurpose.java b/src/main/java/org/ldk/structs/PaymentPurpose.java index 3c404af4..10bce274 100644 --- a/src/main/java/org/ldk/structs/PaymentPurpose.java +++ b/src/main/java/org/ldk/structs/PaymentPurpose.java @@ -4,6 +4,7 @@ import org.ldk.impl.bindings; import org.ldk.enums.*; import org.ldk.util.*; import java.util.Arrays; +import java.lang.ref.Reference; import javax.annotation.Nullable; @@ -58,22 +59,10 @@ public class PaymentPurpose extends CommonBase { * [`ChannelManager::create_inbound_payment_for_hash`]: crate::ln::channelmanager::ChannelManager::create_inbound_payment_for_hash */ public final byte[] payment_secret; - /** - * This is the `user_payment_id` which was provided to - * [`ChannelManager::create_inbound_payment_for_hash`] or - * [`ChannelManager::create_inbound_payment`]. It has no meaning inside of LDK and is - * simply copied here. It may be used to correlate PaymentReceived events with invoice - * metadata stored elsewhere. - * - * [`ChannelManager::create_inbound_payment`]: crate::ln::channelmanager::ChannelManager::create_inbound_payment - * [`ChannelManager::create_inbound_payment_for_hash`]: crate::ln::channelmanager::ChannelManager::create_inbound_payment_for_hash - */ - public final long user_payment_id; private InvoicePayment(long ptr, bindings.LDKPaymentPurpose.InvoicePayment obj) { super(null, ptr); this.payment_preimage = obj.payment_preimage; this.payment_secret = obj.payment_secret; - this.user_payment_id = obj.user_payment_id; } } /** @@ -89,6 +78,7 @@ public class PaymentPurpose extends CommonBase { } long clone_ptr() { long ret = bindings.PaymentPurpose_clone_ptr(this.ptr); + Reference.reachabilityFence(this); return ret; } @@ -97,6 +87,7 @@ public class PaymentPurpose extends CommonBase { */ public PaymentPurpose clone() { long ret = bindings.PaymentPurpose_clone(this.ptr); + Reference.reachabilityFence(this); if (ret >= 0 && ret <= 4096) { return null; } PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(this); @@ -106,8 +97,10 @@ public class PaymentPurpose extends CommonBase { /** * Utility method to constructs a new InvoicePayment-variant PaymentPurpose */ - public static PaymentPurpose invoice_payment(byte[] payment_preimage, byte[] payment_secret, long user_payment_id) { - long ret = bindings.PaymentPurpose_invoice_payment(InternalUtils.check_arr_len(payment_preimage, 32), InternalUtils.check_arr_len(payment_secret, 32), user_payment_id); + public static PaymentPurpose invoice_payment(byte[] payment_preimage, byte[] payment_secret) { + long ret = bindings.PaymentPurpose_invoice_payment(InternalUtils.check_arr_len(payment_preimage, 32), InternalUtils.check_arr_len(payment_secret, 32)); + Reference.reachabilityFence(payment_preimage); + Reference.reachabilityFence(payment_secret); if (ret >= 0 && ret <= 4096) { return null; } PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv); @@ -119,6 +112,7 @@ public class PaymentPurpose extends CommonBase { */ public static PaymentPurpose spontaneous_payment(byte[] a) { long ret = bindings.PaymentPurpose_spontaneous_payment(InternalUtils.check_arr_len(a, 32)); + Reference.reachabilityFence(a); if (ret >= 0 && ret <= 4096) { return null; } PaymentPurpose ret_hu_conv = PaymentPurpose.constr_from_ptr(ret); ret_hu_conv.ptrs_to.add(ret_hu_conv);