Design a logger system that receives a stream of messages along with their timestamps. Each unique message should only be printed at most every 10 seconds (i.e. a message printed at timestamp t will prevent other identical messages from being printed until timestamp t + 10).
All messages will come in chronological order. Several messages may arrive at the same timestamp.
Implement the Logger class:
1. Logger() Initializes the logger object.
2. bool shouldPrintMessage(int timestamp, string message) Returns true if the message should be printed in the given timestamp, otherwise returns false.
var Logger = function() {
this.map = new Map();
};
Logger.prototype.shouldPrintMessage = function(timestamp, message) {
if(this.map.has(message)){
const prevTime = this.map.get(message);
if(timestamp < prevTime + 10) return false;
}
this.map.set(message, timestamp);
return true;
};
Top comments (0)