- public static HolderCommitmentTransaction constructor_new_missing_holder_sig(byte[] unsigned_tx, byte[] counterparty_sig, byte[] holder_funding_key, byte[] counterparty_funding_key, TxCreationKeys keys, int feerate_per_kw, TwoTuple<HTLCOutputInCommitment, byte[]>[] htlc_data) {
- long ret = bindings.HolderCommitmentTransaction_new_missing_holder_sig(unsigned_tx, counterparty_sig, holder_funding_key, counterparty_funding_key, keys == null ? 0 : keys.ptr & ~1, feerate_per_kw, Arrays.stream(htlc_data).mapToLong(arr_conv_42 -> bindings.C2Tuple_HTLCOutputInCommitmentSignatureZ_new(arr_conv_42.a == null ? 0 : arr_conv_42.a.ptr & ~1/*XXX: this.ptrs_to.add(arr_conv_42_a)*/, arr_conv_42.b)).toArray());
- HolderCommitmentTransaction ret_hu_conv = new HolderCommitmentTransaction(null, ret);
- ret_hu_conv.ptrs_to.add(keys);
- /* TODO 2 TwoTuple<HTLCOutputInCommitment, byte[]> */;
- return ret_hu_conv;
- }
-
- public TxCreationKeys trust_key_derivation() {
- long ret = bindings.HolderCommitmentTransaction_trust_key_derivation(this.ptr);
- TxCreationKeys ret_hu_conv = new TxCreationKeys(null, ret);
+ /**
+ * Creates a copy of the HolderCommitmentTransaction
+ */
+ public HolderCommitmentTransaction clone() {
+ long ret = bindings.HolderCommitmentTransaction_clone(this.ptr);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ HolderCommitmentTransaction ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new HolderCommitmentTransaction(null, ret); }
+ ret_hu_conv.ptrs_to.add(this);