what-the-bank/sources/org/jmrtd/lds/icao/DG2File.java

94 lines
3.7 KiB
Java

package org.jmrtd.lds.icao;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Logger;
import org.jmrtd.cbeff.BiometricDataBlock;
import org.jmrtd.cbeff.BiometricDataBlockDecoder;
import org.jmrtd.cbeff.BiometricDataBlockEncoder;
import org.jmrtd.cbeff.CBEFFInfo;
import org.jmrtd.cbeff.ComplexCBEFFInfo;
import org.jmrtd.cbeff.ISO781611Decoder;
import org.jmrtd.cbeff.ISO781611Encoder;
import org.jmrtd.cbeff.SimpleCBEFFInfo;
import org.jmrtd.cbeff.StandardBiometricHeader;
import org.jmrtd.lds.CBEFFDataGroup;
import org.jmrtd.lds.iso19794.FaceInfo;
/* loaded from: classes6.dex */
public class DG2File extends CBEFFDataGroup<FaceInfo> {
private static final long serialVersionUID = 414300652684010416L;
private static final Logger LOGGER = Logger.getLogger("org.jmrtd");
private static final ISO781611Decoder DECODER = new ISO781611Decoder(new BiometricDataBlockDecoder<FaceInfo>() { // from class: org.jmrtd.lds.icao.DG2File.1
@Override // org.jmrtd.cbeff.BiometricDataBlockDecoder
public final FaceInfo decode(InputStream inputStream, StandardBiometricHeader standardBiometricHeader, int i, int i2) throws IOException {
return new FaceInfo(standardBiometricHeader, inputStream);
}
});
private static final ISO781611Encoder<FaceInfo> ENCODER = new ISO781611Encoder<>(new BiometricDataBlockEncoder<FaceInfo>() { // from class: org.jmrtd.lds.icao.DG2File.2
@Override // org.jmrtd.cbeff.BiometricDataBlockEncoder
public final void encode(FaceInfo faceInfo, OutputStream outputStream) throws IOException {
faceInfo.writeObject(outputStream);
}
});
public DG2File(List<FaceInfo> list) {
super(117, list);
}
public DG2File(InputStream inputStream) throws IOException {
super(117, inputStream);
}
@Override // org.jmrtd.lds.AbstractTaggedLDSFile
public void readContent(InputStream inputStream) throws IOException {
for (CBEFFInfo cBEFFInfo : DECODER.decode(inputStream).getSubRecords()) {
if (!(cBEFFInfo instanceof SimpleCBEFFInfo)) {
StringBuilder sb = new StringBuilder("Was expecting a SimpleCBEFFInfo, found ");
sb.append(cBEFFInfo.getClass().getSimpleName());
throw new IOException(sb.toString());
}
BiometricDataBlock biometricDataBlock = ((SimpleCBEFFInfo) cBEFFInfo).getBiometricDataBlock();
if (!(biometricDataBlock instanceof FaceInfo)) {
StringBuilder sb2 = new StringBuilder("Was expecting a FaceInfo, found ");
sb2.append(biometricDataBlock.getClass().getSimpleName());
throw new IOException(sb2.toString());
}
add((FaceInfo) biometricDataBlock);
}
}
@Override // org.jmrtd.lds.AbstractTaggedLDSFile
public void writeContent(OutputStream outputStream) throws IOException {
ComplexCBEFFInfo complexCBEFFInfo = new ComplexCBEFFInfo();
Iterator<FaceInfo> it = getSubRecords().iterator();
while (it.hasNext()) {
complexCBEFFInfo.add(new SimpleCBEFFInfo(it.next()));
}
ENCODER.encode(complexCBEFFInfo, outputStream);
}
@Override // org.jmrtd.lds.DataGroup, org.jmrtd.lds.AbstractTaggedLDSFile
public String toString() {
StringBuilder sb = new StringBuilder("DG2File [");
sb.append(super.toString());
sb.append("]");
return sb.toString();
}
public List<FaceInfo> getFaceInfos() {
return getSubRecords();
}
public void addFaceInfo(FaceInfo faceInfo) {
add(faceInfo);
}
public void removeFaceInfo(int i) {
remove(i);
}
}