Skip to content

Commit 86c87cd

Browse files
committed
Kotlin setTxConfirmed and setTxUnconfirmed
1 parent b20b8c0 commit 86c87cd

File tree

1 file changed

+14
-43
lines changed

1 file changed

+14
-43
lines changed

android/src/main/java/com/reactnativeldk/LdkModule.kt

Lines changed: 14 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -314,13 +314,25 @@ class LdkModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
314314

315315
@ReactMethod
316316
fun setTxConfirmed(header: String, transaction: String, pos: Double, height: Double, promise: Promise) {
317-
//TODO
317+
channelManager ?: return handleReject(promise, LdkErrors.init_channel_manager)
318+
chainMonitor ?: return handleReject(promise, LdkErrors.init_chain_monitor)
319+
320+
val txData = arrayOf(TwoTuple_usizeTransactionZ.of(pos.toLong(), transaction.hexa()))
321+
322+
channelManager!!.as_Confirm().transactions_confirmed(header.hexa(), txData, height.toInt())
323+
chainMonitor!!.as_Confirm().transactions_confirmed(header.hexa(), txData, height.toInt())
324+
318325
handleResolve(promise, LdkCallbackResponses.tx_set_confirmed)
319326
}
320327

321328
@ReactMethod
322329
fun setTxUnconfirmed(txId: String, promise: Promise) {
323-
//TODO
330+
channelManager ?: return handleReject(promise, LdkErrors.init_channel_manager)
331+
chainMonitor ?: return handleReject(promise, LdkErrors.init_chain_monitor)
332+
333+
channelManager!!.as_Confirm().transaction_unconfirmed(txId.hexa())
334+
chainMonitor!!.as_Confirm().transaction_unconfirmed(txId.hexa())
335+
324336
handleResolve(promise, LdkCallbackResponses.tx_set_unconfirmed)
325337
}
326338

@@ -332,48 +344,7 @@ class LdkModule(reactContext: ReactApplicationContext) : ReactContextBaseJavaMod
332344
return handleReject(promise, LdkErrors.decode_invoice_fail)
333345
}
334346

335-
// val parsed_invoice = Invoice.from_str(paymentRequest).toString()
336-
337-
338-
// val parsed_invoice =
339-
// Invoice.from_str((parsed as Result_InvoiceSignOrCreationErrorZ_OK).res.to_str())
340-
341-
342347
val parsedInvoice = parsed as Result_InvoiceParseOrSemanticErrorZ_OK
343-
// val signedInv = parsedInvoice.res.into_signed_raw()
344-
// val rawInv = signedInv.raw_invoice()
345-
// val rawInvoice = signedRaw.raw_invoice()
346-
// val desc = rawInv.description()!!.into_inner()
347-
348-
// signedInv.check_signature()
349-
350-
// signedInv.raw_invoice().description()
351-
// println("parsed_invoice: " + desc)
352-
353-
// val response = Arguments.createMap()
354-
//
355-
// response.putDouble("amount_milli_satoshis", (parsed.res.amount_milli_satoshis() as Option_u64Z.Some).some.toDouble())
356-
//// response.putDouble("amount_milli_satoshis", (signedInv.amount_pico_btc() as Option_u64Z.Some).some.toDouble() / 10 / 10)
357-
// response.putBoolean("check_signature", signedInv.check_signature())
358-
359-
360-
// amount_milli_satoshis?: number;
361-
// descriptio
362-
// check_signature: boolean;
363-
// is_expired: boolean;
364-
// duration_since_epoch: number;
365-
// expiry_time: number;
366-
// min_final_cltv_expiry: number;
367-
// payee_pub_key: string;
368-
// recover_payee_pub_key: string;
369-
// payment_hash: string;
370-
// payment_secret: string;
371-
// timestamp: number;
372-
// features: string;
373-
// currency: number;
374-
// to_str: string; //Actual bolt11 invoice string
375-
376-
println(parsedInvoice.json().toString())
377348

378349
promise.resolve(parsedInvoice.json())
379350
}

0 commit comments

Comments
 (0)