what-the-bank/sources/okhttp3/internal/platform/android/AndroidLog.java

106 lines
3.6 KiB
Java

package okhttp3.internal.platform.android;
import android.util.Log;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.logging.Level;
import java.util.logging.Logger;
import o.C14856gaP;
import o.C14957gcv;
import o.gdZ;
import okhttp3.OkHttpClient;
import okhttp3.internal.concurrent.TaskRunner;
import okhttp3.internal.http2.Http2;
/* loaded from: classes.dex */
public final class AndroidLog {
private static final int MAX_LOG_LENGTH = 4000;
private static final Map<String, String> knownLoggers;
public static final AndroidLog INSTANCE = new AndroidLog();
private static final CopyOnWriteArraySet<Logger> configuredLoggers = new CopyOnWriteArraySet<>();
private AndroidLog() {
}
static {
LinkedHashMap linkedHashMap = new LinkedHashMap();
Package r1 = OkHttpClient.class.getPackage();
String name = r1 == null ? null : r1.getName();
if (name != null) {
linkedHashMap.put(name, "OkHttp");
}
LinkedHashMap linkedHashMap2 = linkedHashMap;
String name2 = OkHttpClient.class.getName();
C14957gcv.c((Object) name2, "");
linkedHashMap2.put(name2, "okhttp.OkHttpClient");
String name3 = Http2.class.getName();
C14957gcv.c((Object) name3, "");
linkedHashMap2.put(name3, "okhttp.Http2");
String name4 = TaskRunner.class.getName();
C14957gcv.c((Object) name4, "");
linkedHashMap2.put(name4, "okhttp.TaskRunner");
linkedHashMap2.put("okhttp3.mockwebserver.MockWebServer", "okhttp.MockWebServer");
knownLoggers = C14856gaP.c(linkedHashMap2);
}
public final void androidLog$okhttp(String str, int i, String str2, Throwable th) {
int min;
C14957gcv.e(str, "");
C14957gcv.e(str2, "");
if (Log.isLoggable(loggerTag(str), i)) {
if (th != null) {
StringBuilder sb = new StringBuilder();
sb.append(str2);
sb.append('\n');
sb.append((Object) Log.getStackTraceString(th));
str2 = sb.toString();
}
int length = str2.length();
int i2 = 0;
while (i2 < length) {
int a = gdZ.a((CharSequence) str2, '\n', i2, false);
if (a == -1) {
a = length;
}
while (true) {
min = Math.min(a, i2 + MAX_LOG_LENGTH);
C14957gcv.c((Object) str2.substring(i2, min), "");
if (min >= a) {
break;
} else {
i2 = min;
}
}
i2 = min + 1;
}
}
}
private final String loggerTag(String str) {
String str2 = knownLoggers.get(str);
return str2 == null ? gdZ.b(str, 23) : str2;
}
public final void enable() {
for (Map.Entry<String, String> entry : knownLoggers.entrySet()) {
enableLogging(entry.getKey(), entry.getValue());
}
}
private final void enableLogging(String str, String str2) {
Level level;
Logger logger = Logger.getLogger(str);
if (configuredLoggers.add(logger)) {
logger.setUseParentHandlers(false);
if (Log.isLoggable(str2, 3)) {
level = Level.FINE;
} else {
level = Log.isLoggable(str2, 4) ? Level.INFO : Level.WARNING;
}
logger.setLevel(level);
logger.addHandler(AndroidLogHandler.INSTANCE);
}
}
}