-static jclass LDKMessageSendEvent_SendAcceptChannel_class = NULL;
-static jmethodID LDKMessageSendEvent_SendAcceptChannel_meth = NULL;
-static jclass LDKMessageSendEvent_SendOpenChannel_class = NULL;
-static jmethodID LDKMessageSendEvent_SendOpenChannel_meth = NULL;
-static jclass LDKMessageSendEvent_SendFundingCreated_class = NULL;
-static jmethodID LDKMessageSendEvent_SendFundingCreated_meth = NULL;
-static jclass LDKMessageSendEvent_SendFundingSigned_class = NULL;
-static jmethodID LDKMessageSendEvent_SendFundingSigned_meth = NULL;
-static jclass LDKMessageSendEvent_SendFundingLocked_class = NULL;
-static jmethodID LDKMessageSendEvent_SendFundingLocked_meth = NULL;
-static jclass LDKMessageSendEvent_SendAnnouncementSignatures_class = NULL;
-static jmethodID LDKMessageSendEvent_SendAnnouncementSignatures_meth = NULL;
-static jclass LDKMessageSendEvent_UpdateHTLCs_class = NULL;
-static jmethodID LDKMessageSendEvent_UpdateHTLCs_meth = NULL;
-static jclass LDKMessageSendEvent_SendRevokeAndACK_class = NULL;
-static jmethodID LDKMessageSendEvent_SendRevokeAndACK_meth = NULL;
-static jclass LDKMessageSendEvent_SendClosingSigned_class = NULL;
-static jmethodID LDKMessageSendEvent_SendClosingSigned_meth = NULL;
-static jclass LDKMessageSendEvent_SendShutdown_class = NULL;
-static jmethodID LDKMessageSendEvent_SendShutdown_meth = NULL;
-static jclass LDKMessageSendEvent_SendChannelReestablish_class = NULL;
-static jmethodID LDKMessageSendEvent_SendChannelReestablish_meth = NULL;
-static jclass LDKMessageSendEvent_BroadcastChannelAnnouncement_class = NULL;
-static jmethodID LDKMessageSendEvent_BroadcastChannelAnnouncement_meth = NULL;
-static jclass LDKMessageSendEvent_BroadcastNodeAnnouncement_class = NULL;
-static jmethodID LDKMessageSendEvent_BroadcastNodeAnnouncement_meth = NULL;
-static jclass LDKMessageSendEvent_BroadcastChannelUpdate_class = NULL;
-static jmethodID LDKMessageSendEvent_BroadcastChannelUpdate_meth = NULL;
-static jclass LDKMessageSendEvent_HandleError_class = NULL;
-static jmethodID LDKMessageSendEvent_HandleError_meth = NULL;
-static jclass LDKMessageSendEvent_PaymentFailureNetworkUpdate_class = NULL;
-static jmethodID LDKMessageSendEvent_PaymentFailureNetworkUpdate_meth = NULL;
-static jclass LDKMessageSendEvent_SendChannelRangeQuery_class = NULL;
-static jmethodID LDKMessageSendEvent_SendChannelRangeQuery_meth = NULL;
-static jclass LDKMessageSendEvent_SendShortIdsQuery_class = NULL;
-static jmethodID LDKMessageSendEvent_SendShortIdsQuery_meth = NULL;
-JNIEXPORT void JNICALL Java_org_ldk_impl_bindings_00024LDKMessageSendEvent_init (JNIEnv *env, jclass clz) {
- LDKMessageSendEvent_SendAcceptChannel_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendAcceptChannel;"));
- CHECK(LDKMessageSendEvent_SendAcceptChannel_class != NULL);
- LDKMessageSendEvent_SendAcceptChannel_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendAcceptChannel_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendAcceptChannel_meth != NULL);
- LDKMessageSendEvent_SendOpenChannel_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendOpenChannel;"));
- CHECK(LDKMessageSendEvent_SendOpenChannel_class != NULL);
- LDKMessageSendEvent_SendOpenChannel_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendOpenChannel_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendOpenChannel_meth != NULL);
- LDKMessageSendEvent_SendFundingCreated_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendFundingCreated;"));
- CHECK(LDKMessageSendEvent_SendFundingCreated_class != NULL);
- LDKMessageSendEvent_SendFundingCreated_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendFundingCreated_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendFundingCreated_meth != NULL);
- LDKMessageSendEvent_SendFundingSigned_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendFundingSigned;"));
- CHECK(LDKMessageSendEvent_SendFundingSigned_class != NULL);
- LDKMessageSendEvent_SendFundingSigned_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendFundingSigned_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendFundingSigned_meth != NULL);
- LDKMessageSendEvent_SendFundingLocked_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendFundingLocked;"));
- CHECK(LDKMessageSendEvent_SendFundingLocked_class != NULL);
- LDKMessageSendEvent_SendFundingLocked_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendFundingLocked_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendFundingLocked_meth != NULL);
- LDKMessageSendEvent_SendAnnouncementSignatures_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendAnnouncementSignatures;"));
- CHECK(LDKMessageSendEvent_SendAnnouncementSignatures_class != NULL);
- LDKMessageSendEvent_SendAnnouncementSignatures_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendAnnouncementSignatures_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendAnnouncementSignatures_meth != NULL);
- LDKMessageSendEvent_UpdateHTLCs_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$UpdateHTLCs;"));
- CHECK(LDKMessageSendEvent_UpdateHTLCs_class != NULL);
- LDKMessageSendEvent_UpdateHTLCs_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_UpdateHTLCs_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_UpdateHTLCs_meth != NULL);
- LDKMessageSendEvent_SendRevokeAndACK_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendRevokeAndACK;"));
- CHECK(LDKMessageSendEvent_SendRevokeAndACK_class != NULL);
- LDKMessageSendEvent_SendRevokeAndACK_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendRevokeAndACK_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendRevokeAndACK_meth != NULL);
- LDKMessageSendEvent_SendClosingSigned_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendClosingSigned;"));
- CHECK(LDKMessageSendEvent_SendClosingSigned_class != NULL);
- LDKMessageSendEvent_SendClosingSigned_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendClosingSigned_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendClosingSigned_meth != NULL);
- LDKMessageSendEvent_SendShutdown_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendShutdown;"));
- CHECK(LDKMessageSendEvent_SendShutdown_class != NULL);
- LDKMessageSendEvent_SendShutdown_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendShutdown_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendShutdown_meth != NULL);
- LDKMessageSendEvent_SendChannelReestablish_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendChannelReestablish;"));
- CHECK(LDKMessageSendEvent_SendChannelReestablish_class != NULL);
- LDKMessageSendEvent_SendChannelReestablish_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendChannelReestablish_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendChannelReestablish_meth != NULL);
- LDKMessageSendEvent_BroadcastChannelAnnouncement_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$BroadcastChannelAnnouncement;"));
- CHECK(LDKMessageSendEvent_BroadcastChannelAnnouncement_class != NULL);
- LDKMessageSendEvent_BroadcastChannelAnnouncement_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_BroadcastChannelAnnouncement_class, "<init>", "(JJ)V");
- CHECK(LDKMessageSendEvent_BroadcastChannelAnnouncement_meth != NULL);
- LDKMessageSendEvent_BroadcastNodeAnnouncement_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$BroadcastNodeAnnouncement;"));
- CHECK(LDKMessageSendEvent_BroadcastNodeAnnouncement_class != NULL);
- LDKMessageSendEvent_BroadcastNodeAnnouncement_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_BroadcastNodeAnnouncement_class, "<init>", "(J)V");
- CHECK(LDKMessageSendEvent_BroadcastNodeAnnouncement_meth != NULL);
- LDKMessageSendEvent_BroadcastChannelUpdate_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$BroadcastChannelUpdate;"));
- CHECK(LDKMessageSendEvent_BroadcastChannelUpdate_class != NULL);
- LDKMessageSendEvent_BroadcastChannelUpdate_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_BroadcastChannelUpdate_class, "<init>", "(J)V");
- CHECK(LDKMessageSendEvent_BroadcastChannelUpdate_meth != NULL);
- LDKMessageSendEvent_HandleError_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$HandleError;"));
- CHECK(LDKMessageSendEvent_HandleError_class != NULL);
- LDKMessageSendEvent_HandleError_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_HandleError_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_HandleError_meth != NULL);
- LDKMessageSendEvent_PaymentFailureNetworkUpdate_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$PaymentFailureNetworkUpdate;"));
- CHECK(LDKMessageSendEvent_PaymentFailureNetworkUpdate_class != NULL);
- LDKMessageSendEvent_PaymentFailureNetworkUpdate_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_PaymentFailureNetworkUpdate_class, "<init>", "(J)V");
- CHECK(LDKMessageSendEvent_PaymentFailureNetworkUpdate_meth != NULL);
- LDKMessageSendEvent_SendChannelRangeQuery_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendChannelRangeQuery;"));
- CHECK(LDKMessageSendEvent_SendChannelRangeQuery_class != NULL);
- LDKMessageSendEvent_SendChannelRangeQuery_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendChannelRangeQuery_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendChannelRangeQuery_meth != NULL);
- LDKMessageSendEvent_SendShortIdsQuery_class =
- (*env)->NewGlobalRef(env, (*env)->FindClass(env, "Lorg/ldk/impl/bindings$LDKMessageSendEvent$SendShortIdsQuery;"));
- CHECK(LDKMessageSendEvent_SendShortIdsQuery_class != NULL);
- LDKMessageSendEvent_SendShortIdsQuery_meth = (*env)->GetMethodID(env, LDKMessageSendEvent_SendShortIdsQuery_class, "<init>", "([BJ)V");
- CHECK(LDKMessageSendEvent_SendShortIdsQuery_meth != NULL);
-}
-JNIEXPORT jobject JNICALL Java_org_ldk_impl_bindings_LDKMessageSendEvent_1ref_1from_1ptr(JNIEnv *env, jclass clz, int64_t ptr) {
- LDKMessageSendEvent *obj = (LDKMessageSendEvent*)ptr;
- switch(obj->tag) {
- case LDKMessageSendEvent_SendAcceptChannel: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_accept_channel.node_id.compressed_form);
- LDKAcceptChannel msg_var = obj->send_accept_channel.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendAcceptChannel_class, LDKMessageSendEvent_SendAcceptChannel_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendOpenChannel: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_open_channel.node_id.compressed_form);
- LDKOpenChannel msg_var = obj->send_open_channel.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendOpenChannel_class, LDKMessageSendEvent_SendOpenChannel_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendFundingCreated: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_funding_created.node_id.compressed_form);
- LDKFundingCreated msg_var = obj->send_funding_created.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendFundingCreated_class, LDKMessageSendEvent_SendFundingCreated_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendFundingSigned: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_funding_signed.node_id.compressed_form);
- LDKFundingSigned msg_var = obj->send_funding_signed.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendFundingSigned_class, LDKMessageSendEvent_SendFundingSigned_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendFundingLocked: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_funding_locked.node_id.compressed_form);
- LDKFundingLocked msg_var = obj->send_funding_locked.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendFundingLocked_class, LDKMessageSendEvent_SendFundingLocked_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendAnnouncementSignatures: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_announcement_signatures.node_id.compressed_form);
- LDKAnnouncementSignatures msg_var = obj->send_announcement_signatures.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendAnnouncementSignatures_class, LDKMessageSendEvent_SendAnnouncementSignatures_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_UpdateHTLCs: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->update_htl_cs.node_id.compressed_form);
- LDKCommitmentUpdate updates_var = obj->update_htl_cs.updates;
- CHECK((((long)updates_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&updates_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long updates_ref = (long)updates_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_UpdateHTLCs_class, LDKMessageSendEvent_UpdateHTLCs_meth, node_id_arr, updates_ref);
- }
- case LDKMessageSendEvent_SendRevokeAndACK: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_revoke_and_ack.node_id.compressed_form);
- LDKRevokeAndACK msg_var = obj->send_revoke_and_ack.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendRevokeAndACK_class, LDKMessageSendEvent_SendRevokeAndACK_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendClosingSigned: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_closing_signed.node_id.compressed_form);
- LDKClosingSigned msg_var = obj->send_closing_signed.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendClosingSigned_class, LDKMessageSendEvent_SendClosingSigned_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendShutdown: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_shutdown.node_id.compressed_form);
- LDKShutdown msg_var = obj->send_shutdown.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendShutdown_class, LDKMessageSendEvent_SendShutdown_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendChannelReestablish: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_channel_reestablish.node_id.compressed_form);
- LDKChannelReestablish msg_var = obj->send_channel_reestablish.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendChannelReestablish_class, LDKMessageSendEvent_SendChannelReestablish_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_BroadcastChannelAnnouncement: {
- LDKChannelAnnouncement msg_var = obj->broadcast_channel_announcement.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- LDKChannelUpdate update_msg_var = obj->broadcast_channel_announcement.update_msg;
- CHECK((((long)update_msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&update_msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long update_msg_ref = (long)update_msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_BroadcastChannelAnnouncement_class, LDKMessageSendEvent_BroadcastChannelAnnouncement_meth, msg_ref, update_msg_ref);
- }
- case LDKMessageSendEvent_BroadcastNodeAnnouncement: {
- LDKNodeAnnouncement msg_var = obj->broadcast_node_announcement.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_BroadcastNodeAnnouncement_class, LDKMessageSendEvent_BroadcastNodeAnnouncement_meth, msg_ref);
- }
- case LDKMessageSendEvent_BroadcastChannelUpdate: {
- LDKChannelUpdate msg_var = obj->broadcast_channel_update.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_BroadcastChannelUpdate_class, LDKMessageSendEvent_BroadcastChannelUpdate_meth, msg_ref);
- }
- case LDKMessageSendEvent_HandleError: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->handle_error.node_id.compressed_form);
- long action_ref = ((long)&obj->handle_error.action) | 1;
- return (*env)->NewObject(env, LDKMessageSendEvent_HandleError_class, LDKMessageSendEvent_HandleError_meth, node_id_arr, action_ref);
- }
- case LDKMessageSendEvent_PaymentFailureNetworkUpdate: {
- long update_ref = ((long)&obj->payment_failure_network_update.update) | 1;
- return (*env)->NewObject(env, LDKMessageSendEvent_PaymentFailureNetworkUpdate_class, LDKMessageSendEvent_PaymentFailureNetworkUpdate_meth, update_ref);
- }
- case LDKMessageSendEvent_SendChannelRangeQuery: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_channel_range_query.node_id.compressed_form);
- LDKQueryChannelRange msg_var = obj->send_channel_range_query.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendChannelRangeQuery_class, LDKMessageSendEvent_SendChannelRangeQuery_meth, node_id_arr, msg_ref);
- }
- case LDKMessageSendEvent_SendShortIdsQuery: {
- int8_tArray node_id_arr = (*env)->NewByteArray(env, 33);
- (*env)->SetByteArrayRegion(env, node_id_arr, 0, 33, obj->send_short_ids_query.node_id.compressed_form);
- LDKQueryShortChannelIds msg_var = obj->send_short_ids_query.msg;
- CHECK((((long)msg_var.inner) & 1) == 0); // We rely on a free low bit, malloc guarantees this.
- CHECK((((long)&msg_var) & 1) == 0); // We rely on a free low bit, pointer alignment guarantees this.
- long msg_ref = (long)msg_var.inner & ~1;
- return (*env)->NewObject(env, LDKMessageSendEvent_SendShortIdsQuery_class, LDKMessageSendEvent_SendShortIdsQuery_meth, node_id_arr, msg_ref);
- }
- default: abort();
- }
-}
-JNIEXPORT int64_t JNICALL Java_org_ldk_impl_bindings_LDKCVec_1MessageSendEventZ_1new(JNIEnv *env, jclass clz, int64_tArray elems) {
- LDKCVec_MessageSendEventZ *ret = MALLOC(sizeof(LDKCVec_MessageSendEventZ), "LDKCVec_MessageSendEventZ");
- ret->datalen = (*env)->GetArrayLength(env, elems);
- if (ret->datalen == 0) {
- ret->data = NULL;
- } else {
- ret->data = MALLOC(sizeof(LDKMessageSendEvent) * ret->datalen, "LDKCVec_MessageSendEventZ Data");
- int64_t *java_elems = (*env)->GetPrimitiveArrayCritical(env, elems, NULL);
- for (size_t i = 0; i < ret->datalen; i++) {
- int64_t arr_elem = java_elems[i];
- LDKMessageSendEvent arr_elem_conv = *(LDKMessageSendEvent*)(((uint64_t)arr_elem) & ~1);
- FREE((void*)arr_elem);
- ret->data[i] = arr_elem_conv;
- }
- (*env)->ReleasePrimitiveArrayCritical(env, elems, java_elems, 0);
- }
- return (long)ret;