public static ConsoleMessage parseOnConsoleMessageReceived(Jso result) {
if (result == null) {
return null;
}
Jso json = (Jso) result.getObjectField("message");
final int lineNumber = json.hasOwnProperty("line") ? json.getFieldCastedToInteger("line") : -1;
final int repeatCount =
json.hasOwnProperty("repeatCount") ? json.getFieldCastedToInteger("repeatCount") : 1;
final ConsoleMessageLevel messageLevel = parseConsoleMessageLevel(json.getStringField("level"));
final ConsoleMessageType messageType = parseConsoleMessageType(json.getStringField("type"));
final JsonArray<RemoteObject> parameters = parseRemoteObjectArray(
json.getArrayField("parameters"));
final JsonArray<StackTraceItem> stackTrace = parseStackTraceItemArray(
json.getArrayField("stackTrace"));
final String text = json.getStringField("text");
final String url = json.getStringField("url");
return new ConsoleMessage() {
@Override
public ConsoleMessageLevel getLevel() {