package com.thoughtworks.xstream.mapper; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Comparator; import java.util.HashMap; import java.util.Map; import java.util.TreeMap; /* loaded from: classes.dex */ public class PackageAliasingMapper extends MapperWrapper implements Serializable { private static final Comparator REVERSE = new Comparator() { // from class: com.thoughtworks.xstream.mapper.PackageAliasingMapper.1 @Override // java.util.Comparator public int compare(Object obj, Object obj2) { return ((String) obj2).compareTo((String) obj); } }; protected transient Map nameToPackage; private Map packageToName; public PackageAliasingMapper(Mapper mapper) { super(mapper); this.packageToName = new TreeMap(REVERSE); this.nameToPackage = new HashMap(); } private void readObject(ObjectInputStream objectInputStream) throws IOException, ClassNotFoundException { this.packageToName = new TreeMap(REVERSE); this.packageToName.putAll((Map) objectInputStream.readObject()); this.nameToPackage = new HashMap(); for (Object obj : this.packageToName.keySet()) { this.nameToPackage.put(this.packageToName.get(obj), obj); } } private void writeObject(ObjectOutputStream objectOutputStream) throws IOException { objectOutputStream.writeObject(new HashMap(this.packageToName)); } public void addPackageAlias(String str, String str2) { if (str.length() > 0 && str.charAt(str.length() - 1) != '.') { StringBuffer stringBuffer = new StringBuffer(); stringBuffer.append(str); stringBuffer.append('.'); str = stringBuffer.toString(); } if (str2.length() > 0 && str2.charAt(str2.length() - 1) != '.') { StringBuffer stringBuffer2 = new StringBuffer(); stringBuffer2.append(str2); stringBuffer2.append('.'); str2 = stringBuffer2.toString(); } this.nameToPackage.put(str, str2); this.packageToName.put(str2, str); } @Override // com.thoughtworks.xstream.mapper.MapperWrapper, com.thoughtworks.xstream.mapper.Mapper public Class realClass(String str) { String stringBuffer; int length = str.length(); while (true) { int lastIndexOf = str.lastIndexOf(46, length); if (lastIndexOf < 0) { stringBuffer = ""; } else { StringBuffer stringBuffer2 = new StringBuffer(); stringBuffer2.append(str.substring(0, lastIndexOf)); stringBuffer2.append('.'); stringBuffer = stringBuffer2.toString(); } String str2 = (String) this.nameToPackage.get(stringBuffer); if (str2 != null) { StringBuffer stringBuffer3 = new StringBuffer(); stringBuffer3.append(str2); if (lastIndexOf >= 0) { str = str.substring(lastIndexOf + 1); } stringBuffer3.append(str); str = stringBuffer3.toString(); } else { int i = lastIndexOf - 1; if (lastIndexOf < 0) { break; } length = i; } } return super.realClass(str); } @Override // com.thoughtworks.xstream.mapper.MapperWrapper, com.thoughtworks.xstream.mapper.Mapper public String serializedClass(Class cls) { String name = cls.getName(); int length = name.length(); while (true) { int lastIndexOf = name.lastIndexOf(46, length); String str = (String) this.packageToName.get(lastIndexOf < 0 ? "" : name.substring(0, lastIndexOf + 1)); if (str != null) { StringBuffer stringBuffer = new StringBuffer(); stringBuffer.append(str); if (lastIndexOf >= 0) { name = name.substring(lastIndexOf + 1); } stringBuffer.append(name); return stringBuffer.toString(); } int i = lastIndexOf - 1; if (lastIndexOf < 0) { return super.serializedClass(cls); } length = i; } } }