Files
rr3-apk/decompiled-community/sources/com/google/gson/internal/bind/util/ISO8601Utils.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

123 lines
4.3 KiB
Java

package com.google.gson.internal.bind.util;
import com.mbridge.msdk.newreward.function.common.MBridgeCommon;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Locale;
import java.util.TimeZone;
/* loaded from: classes3.dex */
public class ISO8601Utils {
private static final String UTC_ID = "UTC";
private static final TimeZone TIMEZONE_UTC = TimeZone.getTimeZone(UTC_ID);
public static String format(Date date) {
return format(date, false, TIMEZONE_UTC);
}
public static String format(Date date, boolean z) {
return format(date, z, TIMEZONE_UTC);
}
public static String format(Date date, boolean z, TimeZone timeZone) {
GregorianCalendar gregorianCalendar = new GregorianCalendar(timeZone, Locale.US);
gregorianCalendar.setTime(date);
StringBuilder sb = new StringBuilder(19 + (z ? 4 : 0) + (timeZone.getRawOffset() == 0 ? 1 : 6));
padInt(sb, gregorianCalendar.get(1), 4);
sb.append('-');
padInt(sb, gregorianCalendar.get(2) + 1, 2);
sb.append('-');
padInt(sb, gregorianCalendar.get(5), 2);
sb.append('T');
padInt(sb, gregorianCalendar.get(11), 2);
sb.append(':');
padInt(sb, gregorianCalendar.get(12), 2);
sb.append(':');
padInt(sb, gregorianCalendar.get(13), 2);
if (z) {
sb.append('.');
padInt(sb, gregorianCalendar.get(14), 3);
}
int offset = timeZone.getOffset(gregorianCalendar.getTimeInMillis());
if (offset != 0) {
int i = offset / MBridgeCommon.DEFAULT_LOAD_TIMEOUT;
int abs = Math.abs(i / 60);
int abs2 = Math.abs(i % 60);
sb.append(offset >= 0 ? '+' : '-');
padInt(sb, abs, 2);
sb.append(':');
padInt(sb, abs2, 2);
} else {
sb.append('Z');
}
return sb.toString();
}
/* JADX WARN: Removed duplicated region for block: B:82:0x01cf */
/* JADX WARN: Removed duplicated region for block: B:85:0x01eb */
/* JADX WARN: Removed duplicated region for block: B:90:0x01d1 */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public static java.util.Date parse(java.lang.String r19, java.text.ParsePosition r20) throws java.text.ParseException {
/*
Method dump skipped, instructions count: 565
To view this dump add '--comments-level debug' option
*/
throw new UnsupportedOperationException("Method not decompiled: com.google.gson.internal.bind.util.ISO8601Utils.parse(java.lang.String, java.text.ParsePosition):java.util.Date");
}
private static boolean checkOffset(String str, int i, char c) {
return i < str.length() && str.charAt(i) == c;
}
private static int parseInt(String str, int i, int i2) throws NumberFormatException {
int i3;
int i4;
if (i < 0 || i2 > str.length() || i > i2) {
throw new NumberFormatException(str);
}
if (i < i2) {
i4 = i + 1;
int digit = Character.digit(str.charAt(i), 10);
if (digit < 0) {
throw new NumberFormatException("Invalid number: " + str.substring(i, i2));
}
i3 = -digit;
} else {
i3 = 0;
i4 = i;
}
while (i4 < i2) {
int i5 = i4 + 1;
int digit2 = Character.digit(str.charAt(i4), 10);
if (digit2 < 0) {
throw new NumberFormatException("Invalid number: " + str.substring(i, i2));
}
i3 = (i3 * 10) - digit2;
i4 = i5;
}
return -i3;
}
private static void padInt(StringBuilder sb, int i, int i2) {
String num = Integer.toString(i);
for (int length = i2 - num.length(); length > 0; length--) {
sb.append('0');
}
sb.append(num);
}
private static int indexOfNonDigit(String str, int i) {
while (i < str.length()) {
char charAt = str.charAt(i);
if (charAt < '0' || charAt > '9') {
return i;
}
i++;
}
return str.length();
}
}