[Java] Update auto-generated bindings
[ldk-java] / src / main / java / org / ldk / structs / ClosureReason.java
index 495f5ab2c349b394a9fc9e5f1dbb2a5a2091a358..519ac61be4df5a9b675e65c316b62bdeb0ff52d0 100644 (file)
@@ -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;
 
 
@@ -32,6 +33,9 @@ public class ClosureReason extends CommonBase {
                if (raw_val.getClass() == bindings.LDKClosureReason.CommitmentTxConfirmed.class) {
                        return new CommitmentTxConfirmed(ptr, (bindings.LDKClosureReason.CommitmentTxConfirmed)raw_val);
                }
+               if (raw_val.getClass() == bindings.LDKClosureReason.FundingTimedOut.class) {
+                       return new FundingTimedOut(ptr, (bindings.LDKClosureReason.FundingTimedOut)raw_val);
+               }
                if (raw_val.getClass() == bindings.LDKClosureReason.ProcessingError.class) {
                        return new ProcessingError(ptr, (bindings.LDKClosureReason.ProcessingError)raw_val);
                }
@@ -44,6 +48,12 @@ public class ClosureReason extends CommonBase {
                assert false; return null; // Unreachable without extending the (internal) bindings interface
        }
 
+       /**
+        * Closure generated from receiving a peer error message.
+        * 
+        * Our counterparty may have broadcasted their latest commitment state, and we have
+        * as well.
+        */
        public final static class CounterpartyForceClosed extends ClosureReason {
                /**
                 * The error which the peer sent us.
@@ -52,54 +62,97 @@ public class ClosureReason extends CommonBase {
                 * or printed to stdout). Otherwise, a well crafted error message may exploit
                 * a security vulnerability in the terminal emulator or the logging subsystem.
                */
-               public final String peer_msg;
+               public final java.lang.String peer_msg;
                private CounterpartyForceClosed(long ptr, bindings.LDKClosureReason.CounterpartyForceClosed obj) {
                        super(null, ptr);
                        this.peer_msg = obj.peer_msg;
                }
        }
+       /**
+        * Closure generated from [`ChannelManager::force_close_channel`], called by the user.
+        * 
+        * [`ChannelManager::force_close_channel`]: crate::ln::channelmanager::ChannelManager::force_close_channel.
+        */
        public final static class HolderForceClosed extends ClosureReason {
                private HolderForceClosed(long ptr, bindings.LDKClosureReason.HolderForceClosed obj) {
                        super(null, ptr);
                }
        }
+       /**
+        * The channel was closed after negotiating a cooperative close and we've now broadcasted
+        * the cooperative close transaction. Note the shutdown may have been initiated by us.
+        */
        public final static class CooperativeClosure extends ClosureReason {
                private CooperativeClosure(long ptr, bindings.LDKClosureReason.CooperativeClosure obj) {
                        super(null, ptr);
                }
        }
+       /**
+        * A commitment transaction was confirmed on chain, closing the channel. Most likely this
+        * commitment transaction came from our counterparty, but it may also have come from
+        * a copy of our own `ChannelMonitor`.
+        */
        public final static class CommitmentTxConfirmed extends ClosureReason {
                private CommitmentTxConfirmed(long ptr, bindings.LDKClosureReason.CommitmentTxConfirmed obj) {
                        super(null, ptr);
                }
        }
+       /**
+        * The funding transaction failed to confirm in a timely manner on an inbound channel.
+        */
+       public final static class FundingTimedOut extends ClosureReason {
+               private FundingTimedOut(long ptr, bindings.LDKClosureReason.FundingTimedOut obj) {
+                       super(null, ptr);
+               }
+       }
+       /**
+        * Closure generated from processing an event, likely a HTLC forward/relay/reception.
+        */
        public final static class ProcessingError extends ClosureReason {
                /**
                 * A developer-readable error message which we generated.
                */
-               public final String err;
+               public final java.lang.String err;
                private ProcessingError(long ptr, bindings.LDKClosureReason.ProcessingError obj) {
                        super(null, ptr);
                        this.err = obj.err;
                }
        }
+       /**
+        * The `PeerManager` informed us that we've disconnected from the peer. We close channels
+        * if the `PeerManager` informed us that it is unlikely we'll be able to connect to the
+        * peer again in the future or if the peer disconnected before we finished negotiating
+        * the channel open. The first case may be caused by incompatible features which our
+        * counterparty, or we, require.
+        */
        public final static class DisconnectedPeer extends ClosureReason {
                private DisconnectedPeer(long ptr, bindings.LDKClosureReason.DisconnectedPeer obj) {
                        super(null, ptr);
                }
        }
+       /**
+        * Closure generated from `ChannelManager::read` if the ChannelMonitor is newer than
+        * the ChannelManager deserialized.
+        */
        public final static class OutdatedChannelManager extends ClosureReason {
                private OutdatedChannelManager(long ptr, bindings.LDKClosureReason.OutdatedChannelManager obj) {
                        super(null, ptr);
                }
        }
+       long clone_ptr() {
+               long ret = bindings.ClosureReason_clone_ptr(this.ptr);
+               Reference.reachabilityFence(this);
+               return ret;
+       }
+
        /**
         * Creates a copy of the ClosureReason
         */
        public ClosureReason clone() {
                long ret = bindings.ClosureReason_clone(this.ptr);
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               Reference.reachabilityFence(this);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(this);
                return ret_hu_conv;
        }
@@ -109,8 +162,9 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason counterparty_force_closed(java.lang.String peer_msg) {
                long ret = bindings.ClosureReason_counterparty_force_closed(peer_msg);
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               Reference.reachabilityFence(peer_msg);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -120,8 +174,8 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason holder_force_closed() {
                long ret = bindings.ClosureReason_holder_force_closed();
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -131,8 +185,8 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason cooperative_closure() {
                long ret = bindings.ClosureReason_cooperative_closure();
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -142,8 +196,19 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason commitment_tx_confirmed() {
                long ret = bindings.ClosureReason_commitment_tx_confirmed();
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
+               ret_hu_conv.ptrs_to.add(ret_hu_conv);
+               return ret_hu_conv;
+       }
+
+       /**
+        * Utility method to constructs a new FundingTimedOut-variant ClosureReason
+        */
+       public static ClosureReason funding_timed_out() {
+               long ret = bindings.ClosureReason_funding_timed_out();
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -153,8 +218,9 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason processing_error(java.lang.String err) {
                long ret = bindings.ClosureReason_processing_error(err);
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               Reference.reachabilityFence(err);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -164,8 +230,8 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason disconnected_peer() {
                long ret = bindings.ClosureReason_disconnected_peer();
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -175,8 +241,8 @@ public class ClosureReason extends CommonBase {
         */
        public static ClosureReason outdated_channel_manager() {
                long ret = bindings.ClosureReason_outdated_channel_manager();
-               if (ret < 1024) { return null; }
-               ClosureReason ret_hu_conv = ClosureReason.constr_from_ptr(ret);
+               if (ret >= 0 && ret <= 4096) { return null; }
+               org.ldk.structs.ClosureReason ret_hu_conv = org.ldk.structs.ClosureReason.constr_from_ptr(ret);
                ret_hu_conv.ptrs_to.add(ret_hu_conv);
                return ret_hu_conv;
        }
@@ -186,6 +252,7 @@ public class ClosureReason extends CommonBase {
         */
        public byte[] write() {
                byte[] ret = bindings.ClosureReason_write(this.ptr);
+               Reference.reachabilityFence(this);
                return ret;
        }