Updated bindings
[ldk-java] / src / main / java / org / ldk / impl / ln / peer_handler / MessageHandler.java
1 package org.ldk.impl.ln.peer_handler;
2
3 import org.ldk.impl.bindings;
4 import org.ldk.impl.ln.msgs.ChannelMessageHandler;
5 import org.ldk.impl.ln.msgs.RoutingMessageHandler;
6
7 public class MessageHandler {
8     private final long c_obj;
9     // We don't care about these, but we hold references to them to ensure they don't get free'd before us
10     private final ChannelMessageHandler chan_handler;
11     private final RoutingMessageHandler route_handler;
12
13     //oc    Pr  Bprivate MessageHandler(long c_obj) { this.c_obj = c_obj; }
14     public MessageHandler(ChannelMessageHandler chan_handler, RoutingMessageHandler route_handler) {
15         this.c_obj = bindings.MessageHandler_new(chan_handler.getC_obj(), route_handler.getC_obj());
16         this.chan_handler = chan_handler;
17         this.route_handler = route_handler;
18     }
19
20     @SuppressWarnings("deprecation")
21     @Override
22     final protected void finalize() throws Throwable {
23         bindings.MessageHandler_free(this.c_obj);
24         super.finalize();
25     }
26 }