package sk.tomsik68.mclauncher.impl.servers;
/**
* Minecraft's open to lan option servers broadcast a string like [AD]25565[/AD][MOTD]Tomsik68's server[/MOTD].
* This class takes care of extracting the property value. Just a string utility class then.
*/
final class ServerStringDecoder {
static String parseProperty(String serverStr, String property) {
String beginStr = getPropertyBeginStr(property);
String endStr = getPropertyEndStr(property);
int propBegin = serverStr.indexOf(beginStr);
int propEnd = serverStr.indexOf(endStr);
if (propBegin < 0 || propEnd < 0 || propEnd < propBegin) {
return "<data scrambled>";
} else
return serverStr.substring(propBegin + beginStr.length(), propEnd);
}
private static String getPropertyEndStr(String property) {
return "[/".concat(property).concat("]");
}
private static String getPropertyBeginStr(String property) {
return "[".concat(property).concat("]");
}
}