7b1654f5b92416e7b9e4e694a366a829a54a784f
[ldk-java] / ts / structs / ChannelMessageHandler.ts
1
2             
3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
5
6
7
8             export class ChannelMessageHandler extends CommonBase {
9
10                 bindings_instance?: bindings.LDKChannelMessageHandler;
11
12                 constructor(ptr?: number, arg?: bindings.LDKChannelMessageHandler, messageSendEventsProvider?: bindings.LDKMessageSendEventsProvider) {
13                     if (Number.isFinite(ptr)) {
14                                         super(ptr);
15                                         this.bindings_instance = null;
16                                     } else {
17                                         // TODO: private constructor instantiation
18                                         super(bindings.LDKChannelMessageHandler_new(arg, messageSendEventsProvider));
19                                         this.ptrs_to.push(arg);
20                                         this.ptrs_to.push(messageSendEventsProvider);
21
22                                     }
23                 }
24
25                 protected finalize() {
26                     if (this.ptr != 0) {
27                         bindings.ChannelMessageHandler_free(this.ptr);
28                     }
29                     super.finalize();
30                 }
31
32                 static new_impl(arg: ChannelMessageHandlerInterface, messageSendEventsProvider_impl: MessageSendEventsProvider.MessageSendEventsProviderInterface): ChannelMessageHandler {
33                     const impl_holder: LDKChannelMessageHandlerHolder = new LDKChannelMessageHandlerHolder();
34                     let structImplementation = <bindings.LDKChannelMessageHandler>{
35                         // todo: in-line interface filling
36                         handle_open_channel (their_node_id: Uint8Array, their_features: number, msg: number): void {
37                                                         const their_features_hu_conv: InitFeatures = new InitFeatures(null, their_features);
38                                 their_features_hu_conv.ptrs_to.add(this);
39                                                         const msg_hu_conv: OpenChannel = new OpenChannel(null, msg);
40                                                         arg.handle_open_channel(their_node_id, their_features_hu_conv, msg_hu_conv);
41                                                 },
42
43                                                 handle_accept_channel (their_node_id: Uint8Array, their_features: number, msg: number): void {
44                                                         const their_features_hu_conv: InitFeatures = new InitFeatures(null, their_features);
45                                 their_features_hu_conv.ptrs_to.add(this);
46                                                         const msg_hu_conv: AcceptChannel = new AcceptChannel(null, msg);
47                                                         arg.handle_accept_channel(their_node_id, their_features_hu_conv, msg_hu_conv);
48                                                 },
49
50                                                 handle_funding_created (their_node_id: Uint8Array, msg: number): void {
51                                                         const msg_hu_conv: FundingCreated = new FundingCreated(null, msg);
52                                                         arg.handle_funding_created(their_node_id, msg_hu_conv);
53                                                 },
54
55                                                 handle_funding_signed (their_node_id: Uint8Array, msg: number): void {
56                                                         const msg_hu_conv: FundingSigned = new FundingSigned(null, msg);
57                                                         arg.handle_funding_signed(their_node_id, msg_hu_conv);
58                                                 },
59
60                                                 handle_funding_locked (their_node_id: Uint8Array, msg: number): void {
61                                                         const msg_hu_conv: FundingLocked = new FundingLocked(null, msg);
62                                                         arg.handle_funding_locked(their_node_id, msg_hu_conv);
63                                                 },
64
65                                                 handle_shutdown (their_node_id: Uint8Array, msg: number): void {
66                                                         const msg_hu_conv: Shutdown = new Shutdown(null, msg);
67                                                         arg.handle_shutdown(their_node_id, msg_hu_conv);
68                                                 },
69
70                                                 handle_closing_signed (their_node_id: Uint8Array, msg: number): void {
71                                                         const msg_hu_conv: ClosingSigned = new ClosingSigned(null, msg);
72                                                         arg.handle_closing_signed(their_node_id, msg_hu_conv);
73                                                 },
74
75                                                 handle_update_add_htlc (their_node_id: Uint8Array, msg: number): void {
76                                                         const msg_hu_conv: UpdateAddHTLC = new UpdateAddHTLC(null, msg);
77                                                         arg.handle_update_add_htlc(their_node_id, msg_hu_conv);
78                                                 },
79
80                                                 handle_update_fulfill_htlc (their_node_id: Uint8Array, msg: number): void {
81                                                         const msg_hu_conv: UpdateFulfillHTLC = new UpdateFulfillHTLC(null, msg);
82                                                         arg.handle_update_fulfill_htlc(their_node_id, msg_hu_conv);
83                                                 },
84
85                                                 handle_update_fail_htlc (their_node_id: Uint8Array, msg: number): void {
86                                                         const msg_hu_conv: UpdateFailHTLC = new UpdateFailHTLC(null, msg);
87                                                         arg.handle_update_fail_htlc(their_node_id, msg_hu_conv);
88                                                 },
89
90                                                 handle_update_fail_malformed_htlc (their_node_id: Uint8Array, msg: number): void {
91                                                         const msg_hu_conv: UpdateFailMalformedHTLC = new UpdateFailMalformedHTLC(null, msg);
92                                                         arg.handle_update_fail_malformed_htlc(their_node_id, msg_hu_conv);
93                                                 },
94
95                                                 handle_commitment_signed (their_node_id: Uint8Array, msg: number): void {
96                                                         const msg_hu_conv: CommitmentSigned = new CommitmentSigned(null, msg);
97                                                         arg.handle_commitment_signed(their_node_id, msg_hu_conv);
98                                                 },
99
100                                                 handle_revoke_and_ack (their_node_id: Uint8Array, msg: number): void {
101                                                         const msg_hu_conv: RevokeAndACK = new RevokeAndACK(null, msg);
102                                                         arg.handle_revoke_and_ack(their_node_id, msg_hu_conv);
103                                                 },
104
105                                                 handle_update_fee (their_node_id: Uint8Array, msg: number): void {
106                                                         const msg_hu_conv: UpdateFee = new UpdateFee(null, msg);
107                                                         arg.handle_update_fee(their_node_id, msg_hu_conv);
108                                                 },
109
110                                                 handle_announcement_signatures (their_node_id: Uint8Array, msg: number): void {
111                                                         const msg_hu_conv: AnnouncementSignatures = new AnnouncementSignatures(null, msg);
112                                                         arg.handle_announcement_signatures(their_node_id, msg_hu_conv);
113                                                 },
114
115                                                 peer_disconnected (their_node_id: Uint8Array, no_connection_possible: boolean): void {
116                                                         arg.peer_disconnected(their_node_id, no_connection_possible);
117                                                 },
118
119                                                 peer_connected (their_node_id: Uint8Array, msg: number): void {
120                                                         const msg_hu_conv: Init = new Init(null, msg);
121                                                         arg.peer_connected(their_node_id, msg_hu_conv);
122                                                 },
123
124                                                 handle_channel_reestablish (their_node_id: Uint8Array, msg: number): void {
125                                                         const msg_hu_conv: ChannelReestablish = new ChannelReestablish(null, msg);
126                                                         arg.handle_channel_reestablish(their_node_id, msg_hu_conv);
127                                                 },
128
129                                                 handle_error (their_node_id: Uint8Array, msg: number): void {
130                                                         const msg_hu_conv: ErrorMessage = new ErrorMessage(null, msg);
131                                                         arg.handle_error(their_node_id, msg_hu_conv);
132                                                 },
133
134                                                 
135                     };
136                     impl_holder.held = new ChannelMessageHandler (null, structImplementation, MessageSendEventsProvider.new_impl(MessageSendEventsProvider_impl).bindings_instance);
137                 }
138             }
139
140             export interface ChannelMessageHandlerInterface {
141                 handle_open_channel(their_node_id: Uint8Array, their_features: InitFeatures, msg: OpenChannel): void;
142                                 handle_accept_channel(their_node_id: Uint8Array, their_features: InitFeatures, msg: AcceptChannel): void;
143                                 handle_funding_created(their_node_id: Uint8Array, msg: FundingCreated): void;
144                                 handle_funding_signed(their_node_id: Uint8Array, msg: FundingSigned): void;
145                                 handle_funding_locked(their_node_id: Uint8Array, msg: FundingLocked): void;
146                                 handle_shutdown(their_node_id: Uint8Array, msg: Shutdown): void;
147                                 handle_closing_signed(their_node_id: Uint8Array, msg: ClosingSigned): void;
148                                 handle_update_add_htlc(their_node_id: Uint8Array, msg: UpdateAddHTLC): void;
149                                 handle_update_fulfill_htlc(their_node_id: Uint8Array, msg: UpdateFulfillHTLC): void;
150                                 handle_update_fail_htlc(their_node_id: Uint8Array, msg: UpdateFailHTLC): void;
151                                 handle_update_fail_malformed_htlc(their_node_id: Uint8Array, msg: UpdateFailMalformedHTLC): void;
152                                 handle_commitment_signed(their_node_id: Uint8Array, msg: CommitmentSigned): void;
153                                 handle_revoke_and_ack(their_node_id: Uint8Array, msg: RevokeAndACK): void;
154                                 handle_update_fee(their_node_id: Uint8Array, msg: UpdateFee): void;
155                                 handle_announcement_signatures(their_node_id: Uint8Array, msg: AnnouncementSignatures): void;
156                                 peer_disconnected(their_node_id: Uint8Array, no_connection_possible: boolean): void;
157                                 peer_connected(their_node_id: Uint8Array, msg: Init): void;
158                                 handle_channel_reestablish(their_node_id: Uint8Array, msg: ChannelReestablish): void;
159                                 handle_error(their_node_id: Uint8Array, msg: ErrorMessage): void;
160                                 
161             }
162
163             class LDKChannelMessageHandlerHolder {
164                 held: ChannelMessageHandler;
165             }
166         public void handle_open_channel(Uint8Array their_node_id, InitFeatures their_features, OpenChannel msg) {
167                 bindings.ChannelMessageHandler_handle_open_channel(this.ptr, their_node_id, their_features == null ? 0 : their_features.ptr & ~1, msg == null ? 0 : msg.ptr & ~1);
168                 this.ptrs_to.add(their_features);
169                 this.ptrs_to.add(msg);
170         }
171
172         public void handle_accept_channel(Uint8Array their_node_id, InitFeatures their_features, AcceptChannel msg) {
173                 bindings.ChannelMessageHandler_handle_accept_channel(this.ptr, their_node_id, their_features == null ? 0 : their_features.ptr & ~1, msg == null ? 0 : msg.ptr & ~1);
174                 this.ptrs_to.add(their_features);
175                 this.ptrs_to.add(msg);
176         }
177
178         public void handle_funding_created(Uint8Array their_node_id, FundingCreated msg) {
179                 bindings.ChannelMessageHandler_handle_funding_created(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
180                 this.ptrs_to.add(msg);
181         }
182
183         public void handle_funding_signed(Uint8Array their_node_id, FundingSigned msg) {
184                 bindings.ChannelMessageHandler_handle_funding_signed(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
185                 this.ptrs_to.add(msg);
186         }
187
188         public void handle_funding_locked(Uint8Array their_node_id, FundingLocked msg) {
189                 bindings.ChannelMessageHandler_handle_funding_locked(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
190                 this.ptrs_to.add(msg);
191         }
192
193         public void handle_shutdown(Uint8Array their_node_id, Shutdown msg) {
194                 bindings.ChannelMessageHandler_handle_shutdown(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
195                 this.ptrs_to.add(msg);
196         }
197
198         public void handle_closing_signed(Uint8Array their_node_id, ClosingSigned msg) {
199                 bindings.ChannelMessageHandler_handle_closing_signed(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
200                 this.ptrs_to.add(msg);
201         }
202
203         public void handle_update_add_htlc(Uint8Array their_node_id, UpdateAddHTLC msg) {
204                 bindings.ChannelMessageHandler_handle_update_add_htlc(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
205                 this.ptrs_to.add(msg);
206         }
207
208         public void handle_update_fulfill_htlc(Uint8Array their_node_id, UpdateFulfillHTLC msg) {
209                 bindings.ChannelMessageHandler_handle_update_fulfill_htlc(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
210                 this.ptrs_to.add(msg);
211         }
212
213         public void handle_update_fail_htlc(Uint8Array their_node_id, UpdateFailHTLC msg) {
214                 bindings.ChannelMessageHandler_handle_update_fail_htlc(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
215                 this.ptrs_to.add(msg);
216         }
217
218         public void handle_update_fail_malformed_htlc(Uint8Array their_node_id, UpdateFailMalformedHTLC msg) {
219                 bindings.ChannelMessageHandler_handle_update_fail_malformed_htlc(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
220                 this.ptrs_to.add(msg);
221         }
222
223         public void handle_commitment_signed(Uint8Array their_node_id, CommitmentSigned msg) {
224                 bindings.ChannelMessageHandler_handle_commitment_signed(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
225                 this.ptrs_to.add(msg);
226         }
227
228         public void handle_revoke_and_ack(Uint8Array their_node_id, RevokeAndACK msg) {
229                 bindings.ChannelMessageHandler_handle_revoke_and_ack(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
230                 this.ptrs_to.add(msg);
231         }
232
233         public void handle_update_fee(Uint8Array their_node_id, UpdateFee msg) {
234                 bindings.ChannelMessageHandler_handle_update_fee(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
235                 this.ptrs_to.add(msg);
236         }
237
238         public void handle_announcement_signatures(Uint8Array their_node_id, AnnouncementSignatures msg) {
239                 bindings.ChannelMessageHandler_handle_announcement_signatures(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
240                 this.ptrs_to.add(msg);
241         }
242
243         public void peer_disconnected(Uint8Array their_node_id, boolean no_connection_possible) {
244                 bindings.ChannelMessageHandler_peer_disconnected(this.ptr, their_node_id, no_connection_possible);
245         }
246
247         public void peer_connected(Uint8Array their_node_id, Init msg) {
248                 bindings.ChannelMessageHandler_peer_connected(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
249                 this.ptrs_to.add(msg);
250         }
251
252         public void handle_channel_reestablish(Uint8Array their_node_id, ChannelReestablish msg) {
253                 bindings.ChannelMessageHandler_handle_channel_reestablish(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
254                 this.ptrs_to.add(msg);
255         }
256
257         public void handle_error(Uint8Array their_node_id, ErrorMessage msg) {
258                 bindings.ChannelMessageHandler_handle_error(this.ptr, their_node_id, msg == null ? 0 : msg.ptr & ~1);
259                 this.ptrs_to.add(msg);
260         }
261
262 }