Files
rr3-apk/decompiled-community/sources/com/glu/plugins/gluanalytics/util/YLogger.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

111 lines
3.2 KiB
Java

package com.glu.plugins.gluanalytics.util;
import android.text.TextUtils;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.json.JSONException;
import org.json.JSONStringer;
/* loaded from: classes2.dex */
public class YLogger {
private final Logger mLog;
private YLogger(Logger logger) {
this.mLog = logger;
}
public static YLogger create(String str) {
return new YLogger(Logger.getLogger(str));
}
public static YLogger create(Class<?> cls) {
return create(cls.getName());
}
public void v(String str, Object... objArr) {
doLog(Level.FINEST, str, objArr);
}
public void i(String str, Object... objArr) {
doLog(Level.INFO, str, objArr);
}
public void e(String str, Object... objArr) {
doLog(Level.SEVERE, str, objArr);
}
public boolean canV() {
return this.mLog.isLoggable(Level.FINEST);
}
private static String format(String str, Object... objArr) {
try {
JSONStringer object = new JSONStringer().array().value(str).object();
appendPlistToJson(object, objArr);
Object[] plistTail = plistTail(objArr);
if (plistTail != null) {
appendPlistToJson(object, plistTail);
}
object.endObject().endArray();
return "#evu" + object.toString();
} catch (JSONException e) {
throw Common.propagate(e);
}
}
private static Throwable findThrowable(Object... objArr) {
Throwable findThrowableNoTail = findThrowableNoTail(objArr);
if (findThrowableNoTail != null) {
return findThrowableNoTail;
}
Object[] plistTail = plistTail(objArr);
if (plistTail != null) {
return findThrowableNoTail(plistTail);
}
return null;
}
private static Throwable findThrowableNoTail(Object... objArr) {
int length = objArr.length - (objArr.length % 2);
for (int i = 0; i < length; i += 2) {
if (TextUtils.equals((String) objArr[i], "e")) {
Object obj = objArr[i + 1];
if (obj instanceof Throwable) {
return (Throwable) obj;
}
}
}
return null;
}
private static Object[] plistTail(Object[] objArr) {
int length = objArr.length;
int i = length - (length % 2);
if (i < length) {
Object obj = objArr[i];
if (obj instanceof Object[]) {
return (Object[]) obj;
}
}
return null;
}
private static void appendPlistToJson(JSONStringer jSONStringer, Object[] objArr) throws JSONException {
int length = objArr.length;
int i = length - (length % 2);
for (int i2 = 0; i2 < i; i2 += 2) {
Object obj = objArr[i2];
Object obj2 = objArr[i2 + 1];
if ((obj instanceof String) && obj2 != null) {
jSONStringer.key((String) obj).value(obj2);
}
}
}
private void doLog(Level level, String str, Object[] objArr) {
if (this.mLog.isLoggable(level)) {
this.mLog.log(level, format(str, objArr), findThrowable(objArr));
}
}
}