X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fldk%2Fstructs%2FFilesystemPersister.java;h=f80fb3a8dd8649dfb5a42d5f0881f3256cd5bc83;hb=32973ea2749f8efd05b543dd774763513013b38b;hp=4df4cb285e082b1342b9875307ddc094fc296fb6;hpb=b0c50b891cbca28d3bd1d86276c132ff5221d8e4;p=ldk-java diff --git a/src/main/java/org/ldk/structs/FilesystemPersister.java b/src/main/java/org/ldk/structs/FilesystemPersister.java index 4df4cb28..f80fb3a8 100644 --- a/src/main/java/org/ldk/structs/FilesystemPersister.java +++ b/src/main/java/org/ldk/structs/FilesystemPersister.java @@ -4,6 +4,8 @@ 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; /** @@ -33,10 +35,12 @@ public class FilesystemPersister extends CommonBase { * Initialize a new FilesystemPersister and set the path to the individual channels' * files. */ - public static FilesystemPersister of(String path_to_channel_data) { + public static FilesystemPersister of(java.lang.String path_to_channel_data) { long ret = bindings.FilesystemPersister_new(path_to_channel_data); - FilesystemPersister ret_hu_conv = new FilesystemPersister(null, ret); - ret_hu_conv.ptrs_to.add(ret_hu_conv); + Reference.reachabilityFence(path_to_channel_data); + if (ret >= 0 && ret <= 4096) { return null; } + org.ldk.structs.FilesystemPersister ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new org.ldk.structs.FilesystemPersister(null, ret); } + if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.add(ret_hu_conv); }; return ret_hu_conv; } @@ -45,27 +49,22 @@ public class FilesystemPersister extends CommonBase { */ public String get_data_dir() { String ret = bindings.FilesystemPersister_get_data_dir(this.ptr); + Reference.reachabilityFence(this); return ret; } /** * Read `ChannelMonitor`s from disk. */ - public Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ read_channelmonitors(KeysInterface keys_manager) { - long ret = bindings.FilesystemPersister_read_channelmonitors(this.ptr, keys_manager == null ? 0 : keys_manager.ptr); + public Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ read_channelmonitors(org.ldk.structs.EntropySource entropy_source, org.ldk.structs.SignerProvider signer_provider) { + long ret = bindings.FilesystemPersister_read_channelmonitors(this.ptr, entropy_source.ptr, signer_provider.ptr); + Reference.reachabilityFence(this); + Reference.reachabilityFence(entropy_source); + Reference.reachabilityFence(signer_provider); + if (ret >= 0 && ret <= 4096) { return null; } Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ ret_hu_conv = Result_CVec_C2Tuple_BlockHashChannelMonitorZZErrorZ.constr_from_ptr(ret); - this.ptrs_to.add(keys_manager); - return ret_hu_conv; - } - - /** - * Constructs a new Persist which calls the relevant methods on this_arg. - * This copies the `inner` pointer in this_arg and thus the returned Persist must be freed before this_arg is - */ - public Persist as_Persist() { - long ret = bindings.FilesystemPersister_as_Persist(this.ptr); - Persist ret_hu_conv = new Persist(null, ret); - ret_hu_conv.ptrs_to.add(this); + if (this != null) { this.ptrs_to.add(entropy_source); }; + if (this != null) { this.ptrs_to.add(signer_provider); }; return ret_hu_conv; }