minecraft-src/com/mojang/realmsclient/gui/RealmsServerList.java
2025-07-04 01:41:11 +03:00

46 lines
1.2 KiB
Java

package com.mojang.realmsclient.gui;
import com.mojang.realmsclient.dto.RealmsServer;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.Minecraft;
@Environment(EnvType.CLIENT)
public class RealmsServerList implements Iterable<RealmsServer> {
private final Minecraft minecraft;
private final Set<RealmsServer> removedServers = new HashSet();
private List<RealmsServer> servers = List.of();
public RealmsServerList(Minecraft minecraft) {
this.minecraft = minecraft;
}
public void updateServersList(List<RealmsServer> servers) {
List<RealmsServer> list = new ArrayList(servers);
list.sort(new RealmsServer.McoServerComparator(this.minecraft.getUser().getName()));
boolean bl = list.removeAll(this.removedServers);
if (!bl) {
this.removedServers.clear();
}
this.servers = list;
}
public void removeItem(RealmsServer server) {
this.servers.remove(server);
this.removedServers.add(server);
}
public Iterator<RealmsServer> iterator() {
return this.servers.iterator();
}
public boolean isEmpty() {
return this.servers.isEmpty();
}
}