decentralised sync engine

refactor: sessions map use whole object

serenity ed72bc70 58ae5416

Changed files
+5 -4
src
+5 -4
src/lib/sessions.ts
···
}
};
export const issuedLatticeTokens = new Map<string, LatticeSessionInfo>();
export const issueNewLatticeToken = ({
···
return sessionInfo;
};
-
export const activeSessions = new Map<string, WebSocket>();
export const isValidSession = (sessionInfo: LatticeSessionInfo) => {
return (
···
} catch {
return { ok: false };
}
-
activeSessions.set(sessionInfo.id, socket);
return { ok: true, data: { sessionSocket: socket } };
};
export const deleteSession = (
sessionInfo: LatticeSessionInfo,
): Result<undefined, undefined> => {
-
if (!activeSessions.has(sessionInfo.id)) return { ok: false };
try {
-
activeSessions.delete(sessionInfo.id);
} catch {
return { ok: false };
}
···
}
};
+
// map of session tokens to session info objects
export const issuedLatticeTokens = new Map<string, LatticeSessionInfo>();
export const issueNewLatticeToken = ({
···
return sessionInfo;
};
+
export const activeLatticeSessions = new Map<LatticeSessionInfo, WebSocket>();
export const isValidSession = (sessionInfo: LatticeSessionInfo) => {
return (
···
} catch {
return { ok: false };
}
+
activeLatticeSessions.set(sessionInfo, socket);
return { ok: true, data: { sessionSocket: socket } };
};
export const deleteSession = (
sessionInfo: LatticeSessionInfo,
): Result<undefined, undefined> => {
+
if (!activeLatticeSessions.has(sessionInfo)) return { ok: false };
try {
+
activeLatticeSessions.delete(sessionInfo);
} catch {
return { ok: false };
}