X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=ts%2Fstructs%2FBroadcasterInterface.ts;h=2fbda7373f3b10d1c19a65c579c29264bb7f36d4;hb=22f5f4208b1f3b5542292250f1612b944f5cd7fd;hp=a6f074ba120758fb276987ebadd0cc46e369776f;hpb=56e9910ffaa7fccf2cb777dc9cf55e01a9681543;p=ldk-java diff --git a/ts/structs/BroadcasterInterface.ts b/ts/structs/BroadcasterInterface.ts index a6f074ba..2fbda737 100644 --- a/ts/structs/BroadcasterInterface.ts +++ b/ts/structs/BroadcasterInterface.ts @@ -1,4 +1,56 @@ - public void broadcast_transaction(byte[] tx) { + + +import CommonBase from './CommonBase'; +import * as bindings from '../bindings' // TODO: figure out location + + + + export class BroadcasterInterface extends CommonBase { + + bindings_instance?: bindings.LDKBroadcasterInterface; + + constructor(ptr?: number, arg?: bindings.LDKBroadcasterInterface) { + if (Number.isFinite(ptr)) { + super(ptr); + this.bindings_instance = null; + } else { + // TODO: private constructor instantiation + super(bindings.LDKBroadcasterInterface_new(arg)); + this.ptrs_to.push(arg); + + } + } + + protected finalize() { + if (this.ptr != 0) { + bindings.BroadcasterInterface_free(this.ptr); + } + super.finalize(); + } + + static new_impl(arg: BroadcasterInterfaceInterface): BroadcasterInterface { + const impl_holder: LDKBroadcasterInterfaceHolder = new LDKBroadcasterInterfaceHolder(); + let structImplementation = { + // todo: in-line interface filling + broadcast_transaction (tx: Uint8Array): void { + arg.broadcast_transaction(tx); + }, + + + }; + impl_holder.held = new BroadcasterInterface (null, structImplementation); + } + } + + export interface BroadcasterInterfaceInterface { + broadcast_transaction(tx: Uint8Array): void; + + } + + class LDKBroadcasterInterfaceHolder { + held: BroadcasterInterface; + } + public void broadcast_transaction(Uint8Array tx) { bindings.BroadcasterInterface_broadcast_transaction(this.ptr, tx); }