MCPcopy Create free account
hub / github.com/IceClusters/icmysql / Middleware

Function Middleware

src/db/debug/Interceptor.js:23–38  ·  view source on GitHub ↗
(data)

Source from the content-addressed store, hash-verified

21}
22
23async function Middleware(data) {
24 const randomId = Math.floor(Math.random() * 100000);
25 const queryId = `${performance.now()}-${randomId}`;
26 queue[queryId] = { resourceName: data.resourceName, type: data.type, dbId: data.dbId, query: data.query, values: data.values, callback: data.callback, cache: data.cache, canfollow: false };
27 for(let i = 0; i < interceptorSuscribers.length; i++) {
28 TriggerClientEvent("icmysql:client:getQueryData", interceptorSuscribers[i], queryId, data);
29 }
30
31 while(queue[queryId].canfollow === false && global.interceptor) {
32 await new Promise((resolve) => setTimeout(resolve, 1000));
33 }
34 if(queue[queryId].canfollow === -1) return null;
35 const result = queue[queryId];
36 delete queue[queryId];
37 return result;
38}
39
40function SendEventToSuscribers(eventName, ...args) {
41 for(let i = 0; i < interceptorSuscribers.length; i++) {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected