90 lines
3.3 KiB
Rust
90 lines
3.3 KiB
Rust
// file: kb_lib/src/lib.rs
|
|
|
|
//! Core library of the `khadhroony-bobobot` workspace.
|
|
//!
|
|
//! This crate contains the reusable backend logic shared by the desktop
|
|
//! application and future clients.
|
|
|
|
#![deny(unreachable_pub)]
|
|
#![warn(missing_docs)]
|
|
|
|
mod config;
|
|
mod constants;
|
|
mod error;
|
|
mod http_client;
|
|
mod rpc_ws;
|
|
mod tracing;
|
|
mod types;
|
|
mod ws_client;
|
|
mod rpc_ws_solana;
|
|
mod http_pool;
|
|
mod db;
|
|
|
|
pub use crate::config::KbAppConfig;
|
|
pub use crate::config::KbConfig;
|
|
pub use crate::config::KbDataConfig;
|
|
pub use crate::config::KbHttpEndpointConfig;
|
|
pub use crate::config::KbLoggingConfig;
|
|
pub use crate::config::KbSolanaConfig;
|
|
pub use crate::config::KbWsEndpointConfig;
|
|
pub use crate::config::KbDatabaseConfig;
|
|
pub use crate::config::KbSqliteDatabaseConfig;
|
|
pub use crate::constants::*;
|
|
pub use crate::error::KbError;
|
|
pub use crate::rpc_ws::KbJsonRpcWsErrorObject;
|
|
pub use crate::rpc_ws::KbJsonRpcWsErrorResponse;
|
|
pub use crate::rpc_ws::KbJsonRpcWsIncomingMessage;
|
|
pub use crate::rpc_ws::KbJsonRpcWsNotification;
|
|
pub use crate::rpc_ws::KbJsonRpcWsNotificationParams;
|
|
pub use crate::rpc_ws::KbJsonRpcWsRequest;
|
|
pub use crate::rpc_ws::KbJsonRpcWsSuccessResponse;
|
|
pub use crate::rpc_ws::kb_is_probable_json_rpc_object_text;
|
|
pub use crate::rpc_ws::parse_kb_json_rpc_ws_incoming_text;
|
|
pub use crate::rpc_ws::parse_kb_json_rpc_ws_incoming_value;
|
|
pub use crate::http_client::HttpClient;
|
|
pub use crate::http_client::KbJsonRpcHttpErrorObject;
|
|
pub use crate::http_client::KbJsonRpcHttpErrorResponse;
|
|
pub use crate::http_client::KbJsonRpcHttpRequest;
|
|
pub use crate::http_client::KbJsonRpcHttpResponse;
|
|
pub use crate::http_client::KbJsonRpcHttpSuccessResponse;
|
|
pub use crate::http_client::KbHttpEndpointStatus;
|
|
pub use crate::http_client::KbHttpMethodClass;
|
|
pub use crate::http_client::parse_kb_json_rpc_http_response_text;
|
|
pub use crate::http_client::parse_kb_json_rpc_http_response_value;
|
|
pub use crate::tracing::KbTracingGuard;
|
|
pub use crate::tracing::init_tracing;
|
|
pub use crate::types::KbConnectionState;
|
|
pub use crate::ws_client::WsClient;
|
|
pub use crate::ws_client::WsEvent;
|
|
pub use crate::ws_client::WsOutgoingMessage;
|
|
pub use crate::ws_client::WsSubscriptionInfo;
|
|
pub use crate::rpc_ws_solana::KbSolanaWsTypedNotification;
|
|
pub use crate::rpc_ws_solana::parse_kb_solana_ws_typed_notification;
|
|
pub use crate::rpc_ws_solana::parse_kb_solana_ws_typed_notification_from_event;
|
|
pub use crate::http_pool::HttpEndpointPool;
|
|
pub use crate::http_pool::KbHttpPoolClientSnapshot;
|
|
pub use crate::db::KbDatabase;
|
|
pub use crate::db::KbDatabaseBackend;
|
|
pub use crate::db::KbDatabaseConnection;
|
|
pub use crate::db::KbDbMetadataDto;
|
|
pub use crate::db::KbDbMetadataEntity;
|
|
pub use crate::db::get_db_metadata;
|
|
pub use crate::db::list_db_metadata;
|
|
pub use crate::db::upsert_db_metadata;
|
|
pub use crate::db::KbDbRuntimeEventDto;
|
|
pub use crate::db::KbDbRuntimeEventEntity;
|
|
pub use crate::db::KbDbRuntimeEventLevel;
|
|
pub use crate::db::KbKnownHttpEndpointDto;
|
|
pub use crate::db::KbKnownHttpEndpointEntity;
|
|
pub use crate::db::KbKnownWsEndpointDto;
|
|
pub use crate::db::KbKnownWsEndpointEntity;
|
|
pub use crate::db::get_known_http_endpoint;
|
|
pub use crate::db::get_known_ws_endpoint;
|
|
pub use crate::db::insert_db_runtime_event;
|
|
pub use crate::db::list_known_http_endpoints;
|
|
pub use crate::db::list_known_ws_endpoints;
|
|
pub use crate::db::list_recent_db_runtime_events;
|
|
pub use crate::db::upsert_known_http_endpoint;
|
|
pub use crate::db::upsert_known_ws_endpoint;
|
|
|