jimu-decompiled/sources/com/thoughtworks/xstream/io/path/PathTrackingWriter.java
2025-05-13 19:24:51 +02:00

36 lines
1.5 KiB
Java

package com.thoughtworks.xstream.io.path;
import com.thoughtworks.xstream.io.AbstractWriter;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.io.WriterWrapper;
/* loaded from: classes.dex */
public class PathTrackingWriter extends WriterWrapper {
private final boolean isNameEncoding;
private final PathTracker pathTracker;
public PathTrackingWriter(HierarchicalStreamWriter hierarchicalStreamWriter, PathTracker pathTracker) {
super(hierarchicalStreamWriter);
this.isNameEncoding = hierarchicalStreamWriter.underlyingWriter() instanceof AbstractWriter;
this.pathTracker = pathTracker;
}
@Override // com.thoughtworks.xstream.io.WriterWrapper, com.thoughtworks.xstream.io.HierarchicalStreamWriter
public void endNode() {
super.endNode();
this.pathTracker.popElement();
}
@Override // com.thoughtworks.xstream.io.WriterWrapper, com.thoughtworks.xstream.io.HierarchicalStreamWriter
public void startNode(String str) {
this.pathTracker.pushElement(this.isNameEncoding ? ((AbstractWriter) this.wrapped.underlyingWriter()).encodeNode(str) : str);
super.startNode(str);
}
@Override // com.thoughtworks.xstream.io.WriterWrapper, com.thoughtworks.xstream.io.ExtendedHierarchicalStreamWriter
public void startNode(String str, Class cls) {
this.pathTracker.pushElement(this.isNameEncoding ? ((AbstractWriter) this.wrapped.underlyingWriter()).encodeNode(str) : str);
super.startNode(str, cls);
}
}