minecraft-src/net/minecraft/server/players/IpBanList.java
2025-07-04 01:41:11 +03:00

45 lines
1 KiB
Java

package net.minecraft.server.players;
import com.google.gson.JsonObject;
import java.io.File;
import java.net.SocketAddress;
import org.jetbrains.annotations.Nullable;
public class IpBanList extends StoredUserList<String, IpBanListEntry> {
public IpBanList(File file) {
super(file);
}
@Override
protected StoredUserEntry<String> createEntry(JsonObject entryData) {
return new IpBanListEntry(entryData);
}
public boolean isBanned(SocketAddress address) {
String string = this.getIpFromAddress(address);
return this.contains(string);
}
public boolean isBanned(String address) {
return this.contains(address);
}
@Nullable
public IpBanListEntry get(SocketAddress address) {
String string = this.getIpFromAddress(address);
return this.get(string);
}
private String getIpFromAddress(SocketAddress address) {
String string = address.toString();
if (string.contains("/")) {
string = string.substring(string.indexOf(47) + 1);
}
if (string.contains(":")) {
string = string.substring(0, string.indexOf(58));
}
return string;
}
}