alexandroid/decompiled/jadx/sources/androidx/browser/trusted/TokenContents.java
KaKi87 a47fad5135 📦 Add decompiled Alexa 2.2.730155.0 (jadx, apktool, Hermes strings)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-07 00:04:16 +01:00

162 lines
5 KiB
Java

package androidx.browser.trusted;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.here.time.Duration$$ExternalSyntheticBUOutline0;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import rx.Single$$ExternalSyntheticBUOutline0;
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
/* loaded from: classes.dex */
final class TokenContents {
@NonNull
private final byte[] mContents;
@Nullable
private List<byte[]> mFingerprints;
@Nullable
private String mPackageName;
private TokenContents(@NonNull byte[] bArr, @NonNull String str, @NonNull List<byte[]> list) {
this.mContents = bArr;
this.mPackageName = str;
this.mFingerprints = new ArrayList(list.size());
for (byte[] bArr2 : list) {
this.mFingerprints.add(Arrays.copyOf(bArr2, bArr2.length));
}
}
/* JADX INFO: Access modifiers changed from: private */
public static int compareByteArrays(byte[] bArr, byte[] bArr2) {
if (bArr == bArr2) {
return 0;
}
if (bArr == null) {
return -1;
}
if (bArr2 == null) {
return 1;
}
for (int i = 0; i < Math.min(bArr.length, bArr2.length); i++) {
byte b = bArr[i];
byte b2 = bArr2[i];
if (b != b2) {
return b - b2;
}
}
if (bArr.length != bArr2.length) {
return bArr.length - bArr2.length;
}
return 0;
}
@NonNull
public static TokenContents create(String str, List<byte[]> list) throws IOException {
return new TokenContents(createToken(str, list), str, list);
}
@NonNull
private static byte[] createToken(@NonNull String str, @NonNull List<byte[]> list) throws IOException {
Collections.sort(list, new TokenContents$$ExternalSyntheticLambda0());
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
DataOutputStream dataOutputStream = new DataOutputStream(byteArrayOutputStream);
dataOutputStream.writeUTF(str);
dataOutputStream.writeInt(list.size());
for (byte[] bArr : list) {
dataOutputStream.writeInt(bArr.length);
dataOutputStream.write(bArr);
}
dataOutputStream.flush();
return byteArrayOutputStream.toByteArray();
}
@NonNull
public static TokenContents deserialize(@NonNull byte[] bArr) {
return new TokenContents(bArr);
}
private void parseIfNeeded() throws IOException {
if (this.mPackageName != null) {
return;
}
DataInputStream dataInputStream = new DataInputStream(new ByteArrayInputStream(this.mContents));
this.mPackageName = dataInputStream.readUTF();
int readInt = dataInputStream.readInt();
this.mFingerprints = new ArrayList(readInt);
for (int i = 0; i < readInt; i++) {
int readInt2 = dataInputStream.readInt();
byte[] bArr = new byte[readInt2];
if (dataInputStream.read(bArr) != readInt2) {
Single$$ExternalSyntheticBUOutline0.m$2("Could not read fingerprint");
return;
}
this.mFingerprints.add(bArr);
}
}
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || TokenContents.class != obj.getClass()) {
return false;
}
return Arrays.equals(this.mContents, ((TokenContents) obj).mContents);
}
@NonNull
public byte[] getFingerprint(int i) throws IOException {
parseIfNeeded();
List<byte[]> list = this.mFingerprints;
if (list != null) {
return Arrays.copyOf(list.get(i), this.mFingerprints.get(i).length);
}
Duration$$ExternalSyntheticBUOutline0.m$1();
return null;
}
public int getFingerprintCount() throws IOException {
parseIfNeeded();
List<byte[]> list = this.mFingerprints;
if (list != null) {
return list.size();
}
Duration$$ExternalSyntheticBUOutline0.m$1();
return 0;
}
@NonNull
public String getPackageName() throws IOException {
parseIfNeeded();
String str = this.mPackageName;
if (str != null) {
return str;
}
Duration$$ExternalSyntheticBUOutline0.m$1();
return null;
}
public int hashCode() {
return Arrays.hashCode(this.mContents);
}
@NonNull
public byte[] serialize() {
byte[] bArr = this.mContents;
return Arrays.copyOf(bArr, bArr.length);
}
private TokenContents(@NonNull byte[] bArr) {
this.mContents = bArr;
}
}