import java.util.HashMap;
import java.util.Map;
import java.util.Timer;
import java.util.TimerTask;
public class TemporaryWhitelist {
private Map<String, Long> whitelist = new HashMap<>();
public void addPlayer(String playerName, long durationMillis) {
whitelist.put(playerName, System.currentTimeMillis() + durationMillis);
scheduleRemoval(playerName, durationMillis);
}
public boolean isPlayerWhitelisted(String playerName) {
Long expiryTime = whitelist.get(playerName);
if (expiryTime == null || System.currentTimeMillis() > expiryTime) {
return false;
}
return true;
}
private void scheduleRemoval(String playerName, long durationMillis) {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
whitelist.remove(playerName);
}
}, durationMillis);
}
public static void main(String[] args) {
TemporaryWhitelist wl = new TemporaryWhitelist();
wl.addPlayer("Player1", 60000); // Добавить на 1 минуту
System.out.println("Player1 whitelisted: " + wl.isPlayerWhitelisted("Player1"));
// Подождите 1 минуту и проверьте снова
try {
Thread.sleep(60000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Player1 whitelisted after 1 minute: " + wl.isPlayerWhitelisted("Player1"));
}
}