Update auto-updated Java files
[ldk-java] / ts / structs / Router.ts
1
2             
3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
5
6
7
8             export class Router extends CommonBase {
9
10                 bindings_instance?: bindings.LDKRouter;
11
12                 constructor(ptr?: number, arg?: bindings.LDKRouter) {
13                     if (Number.isFinite(ptr)) {
14                                         super(ptr);
15                                         this.bindings_instance = null;
16                                     } else {
17                                         // TODO: private constructor instantiation
18                                         super(bindings.LDKRouter_new(arg));
19                                         this.ptrs_to.push(arg);
20                                         
21                                     }
22                 }
23
24                 protected finalize() {
25                     if (this.ptr != 0) {
26                         bindings.Router_free(this.ptr);
27                     }
28                     super.finalize();
29                 }
30
31                 static new_impl(arg: RouterInterface): Router {
32                     const impl_holder: LDKRouterHolder = new LDKRouterHolder();
33                     let structImplementation = <bindings.LDKRouter>{
34                         // todo: in-line interface filling
35                         find_route (payer: Uint8Array, params: number, payment_hash: Uint8Array, first_hops: number[], scorer: number): number {
36                                                         const params_hu_conv: RouteParameters = new RouteParameters(null, params);
37                                                         ChannelDetails[] first_hops_conv_16_arr = new ChannelDetails[first_hops.length];
38                                 for (int q = 0; q < first_hops.length; q++) {
39                                         number first_hops_conv_16 = first_hops[q];
40                                         const first_hops_conv_16_hu_conv: ChannelDetails = new ChannelDetails(null, first_hops_conv_16);
41                                         first_hops_conv_16_hu_conv.ptrs_to.add(this);
42                                         first_hops_conv_16_arr[q] = first_hops_conv_16_hu_conv;
43                                 }
44                                                         Score ret_hu_conv = new Score(null, scorer);
45                                 ret_hu_conv.ptrs_to.add(this);
46                                                         Result_RouteLightningErrorZ ret = arg.find_route(payer, params_hu_conv, payment_hash, first_hops_conv_16_arr, ret_hu_conv);
47                                 result: number = ret == null ? 0 : ret.clone_ptr();
48                                 return result;
49                                                 },
50
51                                                 
52                     };
53                     impl_holder.held = new Router (null, structImplementation);
54                 }
55             }
56
57             export interface RouterInterface {
58                 find_route(payer: Uint8Array, params: RouteParameters, payment_hash: Uint8Array, first_hops: ChannelDetails[], scorer: Score): Result_RouteLightningErrorZ;
59                                 
60             }
61
62             class LDKRouterHolder {
63                 held: Router;
64             }
65         public Result_RouteLightningErrorZ find_route(Uint8Array payer, RouteParameters params, Uint8Array payment_hash, ChannelDetails[] first_hops, Score scorer) {
66                 number ret = bindings.Router_find_route(this.ptr, InternalUtils.check_arr_len(payer, 33), params == null ? 0 : params.ptr & ~1, InternalUtils.check_arr_len(payment_hash, 32), first_hops != null ? Arrays.stream(first_hops).map(first_hops_conv_16 -> first_hops_conv_16 == null ? 0 : first_hops_conv_16.ptr & ~1).toArray(number[]::new) : null, scorer == null ? 0 : scorer.ptr);
67                 Result_RouteLightningErrorZ ret_hu_conv = Result_RouteLightningErrorZ.constr_from_ptr(ret);
68                 this.ptrs_to.add(params);
69                 for (ChannelDetails first_hops_conv_16: first_hops) { this.ptrs_to.add(first_hops_conv_16); };
70                 this.ptrs_to.add(scorer);
71                 return ret_hu_conv;
72         }
73
74 }