Work around our stupid hack with a stupid hack (see XXX in genbindings.py)
[ldk-java] / src / main / java / org / ldk / structs / InMemoryChannelKeys.java
index 00825ab32738701ba8132c24aa0b6b7f6a08a6da..fa9ad9d5de46b0c3db28cb1c36cbe580d8895f16 100644 (file)
@@ -11,14 +11,7 @@ public class InMemoryChannelKeys extends CommonBase {
        @Override @SuppressWarnings("deprecation")
        protected void finalize() throws Throwable {
                super.finalize();
-               bindings.InMemoryChannelKeys_free(ptr);
-       }
-
-       public static InMemoryChannelKeys constructor_clone(InMemoryChannelKeys orig) {
-               long ret = bindings.InMemoryChannelKeys_clone(orig == null ? 0 : orig.ptr & ~1);
-               InMemoryChannelKeys ret_hu_conv = new InMemoryChannelKeys(null, ret);
-               ret_hu_conv.ptrs_to.add(orig);
-               return ret_hu_conv;
+               if (ptr != 0) { bindings.InMemoryChannelKeys_free(ptr); }
        }
 
        public byte[] get_funding_key() {
@@ -75,10 +68,24 @@ public class InMemoryChannelKeys extends CommonBase {
                bindings.InMemoryChannelKeys_set_commitment_seed(this.ptr, val);
        }
 
-       // Skipped InMemoryChannelKeys_new
+       public InMemoryChannelKeys clone() {
+               long ret = bindings.InMemoryChannelKeys_clone(this.ptr);
+               InMemoryChannelKeys ret_hu_conv = new InMemoryChannelKeys(null, ret);
+               ret_hu_conv.ptrs_to.add(this);
+               return ret_hu_conv;
+       }
+
+       public static InMemoryChannelKeys constructor_new(byte[] funding_key, byte[] revocation_base_key, byte[] payment_key, byte[] delayed_payment_base_key, byte[] htlc_base_key, byte[] commitment_seed, long channel_value_satoshis, TwoTuple<Long, Long> key_derivation_params) {
+               long ret = bindings.InMemoryChannelKeys_new(funding_key, revocation_base_key, payment_key, delayed_payment_base_key, htlc_base_key, commitment_seed, channel_value_satoshis, bindings.C2Tuple_u64u64Z_new(key_derivation_params.a, key_derivation_params.b));
+               InMemoryChannelKeys ret_hu_conv = new InMemoryChannelKeys(null, ret);
+               ret_hu_conv.ptrs_to.add(ret_hu_conv);
+               return ret_hu_conv;
+       }
+
        public ChannelPublicKeys counterparty_pubkeys() {
                long ret = bindings.InMemoryChannelKeys_counterparty_pubkeys(this.ptr);
                ChannelPublicKeys ret_hu_conv = new ChannelPublicKeys(null, ret);
+               ret_hu_conv.ptrs_to.add(this);
                return ret_hu_conv;
        }
 
@@ -92,6 +99,25 @@ public class InMemoryChannelKeys extends CommonBase {
                return ret;
        }
 
+       public boolean is_outbound() {
+               boolean ret = bindings.InMemoryChannelKeys_is_outbound(this.ptr);
+               return ret;
+       }
+
+       public OutPoint funding_outpoint() {
+               long ret = bindings.InMemoryChannelKeys_funding_outpoint(this.ptr);
+               OutPoint ret_hu_conv = new OutPoint(null, ret);
+               ret_hu_conv.ptrs_to.add(this);
+               return ret_hu_conv;
+       }
+
+       public ChannelTransactionParameters get_channel_parameters() {
+               long ret = bindings.InMemoryChannelKeys_get_channel_parameters(this.ptr);
+               ChannelTransactionParameters ret_hu_conv = new ChannelTransactionParameters(null, ret);
+               ret_hu_conv.ptrs_to.add(this);
+               return ret_hu_conv;
+       }
+
        public ChannelKeys as_ChannelKeys() {
                long ret = bindings.InMemoryChannelKeys_as_ChannelKeys(this.ptr);
                ChannelKeys ret_hu_conv = new ChannelKeys(null, ret);
@@ -99,15 +125,14 @@ public class InMemoryChannelKeys extends CommonBase {
                return ret_hu_conv;
        }
 
-       public byte[] write(InMemoryChannelKeys obj) {
-               byte[] ret = bindings.InMemoryChannelKeys_write(obj == null ? 0 : obj.ptr & ~1);
-               this.ptrs_to.add(obj);
+       public byte[] write() {
+               byte[] ret = bindings.InMemoryChannelKeys_write(this.ptr);
                return ret;
        }
 
-       public static InMemoryChannelKeys constructor_read(byte[] ser) {
+       public static Result_InMemoryChannelKeysDecodeErrorZ constructor_read(byte[] ser) {
                long ret = bindings.InMemoryChannelKeys_read(ser);
-               InMemoryChannelKeys ret_hu_conv = new InMemoryChannelKeys(null, ret);
+               Result_InMemoryChannelKeysDecodeErrorZ ret_hu_conv = Result_InMemoryChannelKeysDecodeErrorZ.constr_from_ptr(ret);
                return ret_hu_conv;
        }