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

67 lines
3.2 KiB
Java

package com.thoughtworks.xstream.converters.time;
import com.thoughtworks.xstream.converters.Converter;
import com.thoughtworks.xstream.converters.MarshallingContext;
import com.thoughtworks.xstream.converters.UnmarshallingContext;
import com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter;
import com.thoughtworks.xstream.io.ExtendedHierarchicalStreamWriterHelper;
import com.thoughtworks.xstream.io.HierarchicalStreamReader;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.mapper.Mapper;
import java.time.DayOfWeek;
import java.time.temporal.WeekFields;
/* loaded from: classes.dex */
public class WeekFieldsConverter implements Converter {
private final Mapper mapper;
public WeekFieldsConverter(Mapper mapper) {
this.mapper = mapper;
}
@Override // com.thoughtworks.xstream.converters.ConverterMatcher
public boolean canConvert(Class cls) {
return cls == WeekFields.class;
}
@Override // com.thoughtworks.xstream.converters.Converter
public void marshal(Object obj, HierarchicalStreamWriter hierarchicalStreamWriter, MarshallingContext marshallingContext) {
WeekFields weekFields = (WeekFields) obj;
ExtendedHierarchicalStreamWriterHelper.startNode(hierarchicalStreamWriter, this.mapper.serializedMember(WeekFields.class, "minimalDays"), Integer.TYPE);
hierarchicalStreamWriter.setValue(String.valueOf(weekFields.getMinimalDaysInFirstWeek()));
hierarchicalStreamWriter.endNode();
ExtendedHierarchicalStreamWriterHelper.startNode(hierarchicalStreamWriter, this.mapper.serializedMember(WeekFields.class, "firstDayOfWeek"), DayOfWeek.class);
marshallingContext.convertAnother(weekFields.getFirstDayOfWeek());
hierarchicalStreamWriter.endNode();
}
@Override // com.thoughtworks.xstream.converters.Converter
public Object unmarshal(HierarchicalStreamReader hierarchicalStreamReader, UnmarshallingContext unmarshallingContext) {
boolean equals = "custom".equals(hierarchicalStreamReader.getAttribute(this.mapper.aliasForSystemAttribute("serialization")));
if (equals) {
hierarchicalStreamReader.moveDown();
hierarchicalStreamReader.moveDown();
}
DayOfWeek dayOfWeek = null;
int i = 0;
while (hierarchicalStreamReader.hasMoreChildren()) {
hierarchicalStreamReader.moveDown();
String nodeName = equals ? hierarchicalStreamReader.getNodeName() : this.mapper.realMember(WeekFields.class, hierarchicalStreamReader.getNodeName());
if ("minimalDays".equals(nodeName)) {
i = Integer.parseInt(hierarchicalStreamReader.getValue());
} else {
if (!"firstDayOfWeek".equals(nodeName)) {
throw new AbstractReflectionConverter.UnknownFieldException(WeekFields.class.getName(), nodeName);
}
dayOfWeek = (DayOfWeek) unmarshallingContext.convertAnother(null, DayOfWeek.class);
}
hierarchicalStreamReader.moveUp();
}
if (equals) {
hierarchicalStreamReader.moveUp();
hierarchicalStreamReader.moveUp();
}
return WeekFields.of(dayOfWeek, i);
}
}