Create structs and traits that are (a bit) more human-friendly!
[ldk-java] / src / main / java / org / ldk / structs / ChainMonitor.java
1 package org.ldk.structs;
2
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
5
6 public class ChainMonitor extends CommonBase {
7         ChainMonitor(Object _dummy, long ptr) { super(ptr); }
8         @Override @SuppressWarnings("deprecation")
9         protected void finalize() throws Throwable {
10                 bindings.ChainMonitor_free(ptr); super.finalize();
11         }
12
13         // Skipped ChainMonitor_block_connected
14         public void block_disconnected(byte[] header, int disconnected_height) {
15                 bindings.ChainMonitor_block_disconnected(this.ptr, header, disconnected_height);
16         }
17
18         public ChainMonitor(Filter chain_source, BroadcasterInterface broadcaster, Logger logger, FeeEstimator feeest) {
19                 super(bindings.ChainMonitor_new(chain_source.ptr, broadcaster.ptr, logger.ptr, feeest.ptr));
20                 this.ptrs_to.add(chain_source);
21                 this.ptrs_to.add(broadcaster);
22                 this.ptrs_to.add(logger);
23                 this.ptrs_to.add(feeest);
24         }
25
26         public Watch as_Watch() {
27                 Watch ret = new Watch(null, bindings.ChainMonitor_as_Watch(this.ptr));
28                 ret.ptrs_to.add(this);
29                 return ret;
30         }
31
32         public EventsProvider as_EventsProvider() {
33                 EventsProvider ret = new EventsProvider(null, bindings.ChainMonitor_as_EventsProvider(this.ptr));
34                 ret.ptrs_to.add(this);
35                 return ret;
36         }
37
38 }