Trying to get organized. Move things db, import, and export out of ssb.c.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@3655 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2021-08-22 19:34:28 +00:00
parent 45dfe34375
commit e922af4c55
9 changed files with 607 additions and 542 deletions

16
src/ssb.db.h Normal file
View File

@ -0,0 +1,16 @@
#pragma once
#include <quickjs.h>
#include <stdbool.h>
typedef struct _tf_ssb_t tf_ssb_t;
void tf_ssb_db_init(tf_ssb_t* ssb);
bool tf_ssb_store_message(tf_ssb_t* ssb, JSContext* context, const char* id, JSValue val, const char* signature);
bool tf_ssb_message_content_get(tf_ssb_t* ssb, const char* id, uint8_t** out_blob, size_t* out_size);
bool tf_ssb_blob_get(tf_ssb_t* ssb, const char* id, uint8_t** out_blob, size_t* out_size);
bool tf_ssb_blob_store(tf_ssb_t* ssb, const uint8_t* blob, size_t size, char* out_id, size_t out_id_size);
bool tf_ssb_get_message_by_author_and_sequence(tf_ssb_t* ssb, const char* author, int64_t sequence, char* out_message_id, size_t out_message_id_size, int64_t* out_timestamp, char** out_content);
bool tf_ssb_get_latest_message_by_author(tf_ssb_t* ssb, const char* author, int64_t* out_sequence, char* out_message_id, size_t out_message_id_size);
void tf_ssb_visit_query(tf_ssb_t* ssb, const char* query, const JSValue binds, void (*callback)(JSValue row, void* user_data), void* user_data);