bitburner-filesync/src/networking/messageTracker.ts
2022-09-30 20:17:00 -04:00

21 lines
471 B
TypeScript

import type { Message } from '../interfaces';
class MessageTracker {
data = new Map<string, Message>();
#maxLength = 200;
push(msg: Message) {
this.data.set(msg.id, msg);
if (this.data.size > this.#maxLength) {
const [firstKey] = this.data.keys();
this.data.delete(firstKey);
}
}
get(index: string) {
return this.data.get(index);
}
}
export const messageTracker = new MessageTracker();