c0c4cfe6b3525854f39d1fe564df577020983244
[ldk-java] / src / main / java / org / ldk / structs / KeysManager.java
1 package org.ldk.structs;
2
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
5 import org.ldk.util.*;
6 import java.util.Arrays;
7
8 @SuppressWarnings("unchecked") // We correctly assign various generic arrays
9 public class KeysManager extends CommonBase {
10         KeysManager(Object _dummy, long ptr) { super(ptr); }
11         @Override @SuppressWarnings("deprecation")
12         protected void finalize() throws Throwable {
13                 super.finalize();
14                 if (ptr != 0) { bindings.KeysManager_free(ptr); }
15         }
16
17         public static KeysManager constructor_new(byte[] seed, long starting_time_secs, int starting_time_nanos) {
18                 long ret = bindings.KeysManager_new(seed, starting_time_secs, starting_time_nanos);
19                 KeysManager ret_hu_conv = new KeysManager(null, ret);
20                 ret_hu_conv.ptrs_to.add(ret_hu_conv);
21                 return ret_hu_conv;
22         }
23
24         public InMemorySigner derive_channel_keys(long channel_value_satoshis, byte[] params) {
25                 long ret = bindings.KeysManager_derive_channel_keys(this.ptr, channel_value_satoshis, params);
26                 InMemorySigner ret_hu_conv = new InMemorySigner(null, ret);
27                 ret_hu_conv.ptrs_to.add(this);
28                 return ret_hu_conv;
29         }
30
31         public Result_TransactionNoneZ spend_spendable_outputs(SpendableOutputDescriptor[] descriptors, TxOut[] outputs, byte[] change_destination_script, int feerate_sat_per_1000_weight) {
32                 long ret = bindings.KeysManager_spend_spendable_outputs(this.ptr, Arrays.stream(descriptors).mapToLong(descriptors_conv_27 -> descriptors_conv_27.ptr).toArray(), Arrays.stream(outputs).mapToLong(outputs_conv_7 -> outputs_conv_7.ptr).toArray(), change_destination_script, feerate_sat_per_1000_weight);
33                 Result_TransactionNoneZ ret_hu_conv = Result_TransactionNoneZ.constr_from_ptr(ret);
34                 /* TODO 2 SpendableOutputDescriptor  */;
35                 /* TODO 2 TxOut  */;
36                 return ret_hu_conv;
37         }
38
39         public KeysInterface as_KeysInterface() {
40                 long ret = bindings.KeysManager_as_KeysInterface(this.ptr);
41                 KeysInterface ret_hu_conv = new KeysInterface(null, ret);
42                 ret_hu_conv.ptrs_to.add(this);
43                 return ret_hu_conv;
44         }
45
46 }