c6500e64fff13edc92b6c7483499517d364a62bf
[ldk-java] / src / main / java / org / ldk / structs / MonitorEvent.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 MonitorEvent extends CommonBase {
10         private MonitorEvent(Object _dummy, long ptr) { super(ptr); }
11         @Override @SuppressWarnings("deprecation")
12         protected void finalize() throws Throwable {
13                 super.finalize();
14                 if (ptr != 0) { bindings.MonitorEvent_free(ptr); }
15         }
16         static MonitorEvent constr_from_ptr(long ptr) {
17                 bindings.LDKMonitorEvent raw_val = bindings.LDKMonitorEvent_ref_from_ptr(ptr);
18                 if (raw_val.getClass() == bindings.LDKMonitorEvent.HTLCEvent.class) {
19                         return new HTLCEvent(ptr, (bindings.LDKMonitorEvent.HTLCEvent)raw_val);
20                 }
21                 if (raw_val.getClass() == bindings.LDKMonitorEvent.CommitmentTxBroadcasted.class) {
22                         return new CommitmentTxBroadcasted(ptr, (bindings.LDKMonitorEvent.CommitmentTxBroadcasted)raw_val);
23                 }
24                 assert false; return null; // Unreachable without extending the (internal) bindings interface
25         }
26
27         public final static class HTLCEvent extends MonitorEvent {
28                 private HTLCEvent(long ptr, bindings.LDKMonitorEvent.HTLCEvent obj) {
29                         super(null, ptr);
30                 }
31         }
32         public final static class CommitmentTxBroadcasted extends MonitorEvent {
33                 private CommitmentTxBroadcasted(long ptr, bindings.LDKMonitorEvent.CommitmentTxBroadcasted obj) {
34                         super(null, ptr);
35                 }
36         }
37 }