axiodb
Version:
The Pure JavaScript Alternative to SQLite. Embedded NoSQL database for Node.js with MongoDB-style queries, zero native dependencies, built-in InMemoryCache, and web GUI. Perfect for desktop apps, CLI tools, and embedded systems. No compilation, no platfor
60 lines (59 loc) • 1.95 kB
TypeScript
import { AxioDB } from '../../../Services/Indexation.operation';
import { TCPResponse } from '../../types/protocol.types';
/**
* Operation Handler - Handles CRUD operation TCP commands
* Reuses existing CRUDController logic
*/
export default class OperationHandler {
private controller;
private axioDB;
constructor(axioDB: AxioDB);
/**
* Handle INSERT_DOCUMENT command
*/
handleInsertDocument(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle INSERT_MANY_DOCUMENTS command
*/
handleInsertManyDocuments(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle QUERY_DOCUMENTS command
*/
handleQueryDocuments(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle QUERY_BY_ID command
*/
handleQueryById(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle UPDATE_DOCUMENT_BY_ID command
*/
handleUpdateById(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle UPDATE_DOCUMENTS_BY_QUERY command
*/
handleUpdateByQuery(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle DELETE_DOCUMENT_BY_ID command
*/
handleDeleteById(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle DELETE_DOCUMENTS_BY_QUERY command
*/
handleDeleteByQuery(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle AGGREGATE command
*/
handleAggregate(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle TOTAL_DOCUMENTS command
*/
handleTotalDocuments(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle CREATE_INDEX command
*/
handleCreateIndex(requestId: string, params: any): Promise<TCPResponse>;
/**
* Handle DROP_INDEX command
*/
handleDropIndex(requestId: string, params: any): Promise<TCPResponse>;
}