Files
redis-gui-foundation/apps/desktop/src-tauri/src/main.rs
Senior Frontend Engineer 8d50243d36 feat(desktop): add redis gui foundation baseline
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-03-28 10:39:40 +00:00

70 lines
2.0 KiB
Rust

use redis_core::{
BackendBootstrap, BackendError, CommandExecutionResult, ConnectionTestResult,
RedisCommandRequest, RedisConnectionRequest, RedisKeyBrowseRequest, RedisKeyBrowseResult,
RedisKeyMetadata, RedisKeyMetadataRequest, RedisKeyTtlUpdateRequest, RedisKeyTtlUpdateResult,
RedisValueReadRequest, RedisValueRecord, RedisValueWriteRequest, browse_keys, execute_command,
inspect_key, read_value, test_connection, update_key_ttl, write_value,
};
#[tauri::command]
fn backend_bootstrap() -> BackendBootstrap {
BackendBootstrap::for_desktop()
}
#[tauri::command]
fn test_redis_connection(
request: RedisConnectionRequest,
) -> Result<ConnectionTestResult, BackendError> {
test_connection(request)
}
#[tauri::command]
fn execute_redis_command(
request: RedisCommandRequest,
) -> Result<CommandExecutionResult, BackendError> {
execute_command(request)
}
#[tauri::command]
fn browse_redis_keys(request: RedisKeyBrowseRequest) -> Result<RedisKeyBrowseResult, BackendError> {
browse_keys(request)
}
#[tauri::command]
fn inspect_redis_key(request: RedisKeyMetadataRequest) -> Result<RedisKeyMetadata, BackendError> {
inspect_key(request)
}
#[tauri::command]
fn read_redis_value(request: RedisValueReadRequest) -> Result<RedisValueRecord, BackendError> {
read_value(request)
}
#[tauri::command]
fn write_redis_value(request: RedisValueWriteRequest) -> Result<RedisValueRecord, BackendError> {
write_value(request)
}
#[tauri::command]
fn update_redis_key_ttl(
request: RedisKeyTtlUpdateRequest,
) -> Result<RedisKeyTtlUpdateResult, BackendError> {
update_key_ttl(request)
}
fn main() {
tauri::Builder::default()
.invoke_handler(tauri::generate_handler![
backend_bootstrap,
test_redis_connection,
execute_redis_command,
browse_redis_keys,
inspect_redis_key,
read_redis_value,
write_redis_value,
update_redis_key_ttl
])
.run(tauri::generate_context!())
.expect("failed to run desktop shell");
}