jimu-decompiled/sources/com/thoughtworks/xstream/converters/extended/ISO8601SqlTimestampConverter.java
2025-05-13 19:24:51 +02:00

76 lines
3.2 KiB
Java

package com.thoughtworks.xstream.converters.extended;
import java.sql.Timestamp;
import java.util.Date;
/* loaded from: classes.dex */
public class ISO8601SqlTimestampConverter extends ISO8601DateConverter {
private static final String PADDING = "000000000";
static /* synthetic */ Class class$java$sql$Timestamp;
static /* synthetic */ Class class$java$util$Date;
static /* synthetic */ Class class$(String str) {
try {
return Class.forName(str);
} catch (ClassNotFoundException e) {
throw new NoClassDefFoundError().initCause(e);
}
}
@Override // com.thoughtworks.xstream.converters.extended.ISO8601DateConverter, com.thoughtworks.xstream.converters.basic.AbstractSingleValueConverter, com.thoughtworks.xstream.converters.ConverterMatcher
public boolean canConvert(Class cls) {
Class cls2 = class$java$sql$Timestamp;
if (cls2 == null) {
cls2 = class$("java.sql.Timestamp");
class$java$sql$Timestamp = cls2;
}
if (cls == cls2) {
Class cls3 = class$java$util$Date;
if (cls3 == null) {
cls3 = class$("java.util.Date");
class$java$util$Date = cls3;
}
if (super.canConvert(cls3)) {
return true;
}
}
return false;
}
@Override // com.thoughtworks.xstream.converters.extended.ISO8601DateConverter, com.thoughtworks.xstream.converters.basic.AbstractSingleValueConverter, com.thoughtworks.xstream.converters.SingleValueConverter
public Object fromString(String str) {
int lastIndexOf = str.lastIndexOf(46);
int i = 0;
if (lastIndexOf > 0) {
int i2 = lastIndexOf + 1;
int i3 = i2;
while (Character.isDigit(str.charAt(i3))) {
i3++;
}
int parseInt = Integer.parseInt(str.substring(i2, i3));
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(str.substring(0, lastIndexOf));
stringBuffer.append(str.substring(i3));
str = stringBuffer.toString();
i = parseInt;
}
Timestamp timestamp = new Timestamp(((Date) super.fromString(str)).getTime());
timestamp.setNanos(i);
return timestamp;
}
@Override // com.thoughtworks.xstream.converters.extended.ISO8601DateConverter, com.thoughtworks.xstream.converters.basic.AbstractSingleValueConverter, com.thoughtworks.xstream.converters.SingleValueConverter
public String toString(Object obj) {
Timestamp timestamp = (Timestamp) obj;
String iSO8601DateConverter = super.toString(new Date((timestamp.getTime() / 1000) * 1000));
String valueOf = String.valueOf(timestamp.getNanos());
int lastIndexOf = iSO8601DateConverter.lastIndexOf(46);
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(iSO8601DateConverter.substring(0, lastIndexOf + 1));
stringBuffer.append(PADDING.substring(valueOf.length()));
stringBuffer.append(valueOf);
stringBuffer.append(iSO8601DateConverter.substring(lastIndexOf + 4));
return stringBuffer.toString();
}
}