package defpackage; import android.content.Intent; import android.net.Uri; import android.nfc.FormatException; import android.nfc.NdefMessage; import android.nfc.NdefRecord; import java.io.UnsupportedEncodingException; import java.nio.ByteBuffer; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Arrays; import java.util.Locale; import java.util.Objects; import org.chromium.webapk.lib.runtime_library.IWebApkApi; /* renamed from: yw0 reason: default package and case insensitive filesystem */ /* compiled from: chromium-ChromePublic.apk-stable-447210115 */ public abstract class AbstractC6013yw0 { public static final String[] a = {"", "http://www.", "https://www.", "http://", "https://", "tel:", "mailto:", "ftp://anonymous:anonymous@", "ftp://ftp.", "ftps://", "sftp://", "smb://", "nfs://", "ftp://", "dav://", "news:", "telnet://", "imap:", "rtsp://", "urn:", "pop:", "sip:", "sips:", "tftp:", "btspp://", "btl2cap://", "btgoep://", "tcpobex://", "irdaobex://", "file://", "urn:epc:id:", "urn:epc:tag:", "urn:epc:pat:", "urn:epc:raw:", "urn:epc:", "urn:nfc:"}; public static NdefRecord a(byte[] bArr, String str, boolean z) { byte[] bArr2; byte b; String uri = Uri.parse(new String(bArr, "UTF-8")).normalizeScheme().toString(); if (uri.length() != 0) { if (str == null) { bArr2 = null; } else { bArr2 = AbstractC2742g7.d(str); } if (z) { return new NdefRecord(3, AbstractC2742g7.d(uri), bArr2, null); } int i = 1; while (true) { String[] strArr = a; if (i >= strArr.length) { b = 0; break; } else if (uri.startsWith(strArr[i])) { b = (byte) i; uri = uri.substring(strArr[i].length()); break; } else { i++; } } byte[] d = AbstractC2742g7.d(uri); byte[] bArr3 = new byte[(d.length + 1)]; bArr3[0] = b; System.arraycopy(d, 0, bArr3, 1, d.length); return new NdefRecord(1, NdefRecord.RTD_URI, bArr2, bArr3); } throw new IllegalArgumentException("uri is empty"); } public static C6187zw0 b(Uri uri, boolean z) { if (uri == null) { return null; } C6187zw0 zw0 = new C6187zw0(); zw0.b = 0; if (z) { zw0.c = "absolute-url"; } else { zw0.c = "url"; } zw0.h = AbstractC2742g7.d(uri.toString()); return zw0; } public static C5839xw0 c(byte[] bArr) { try { return e(new NdefMessage(bArr)); } catch (FormatException | UnsupportedEncodingException unused) { return null; } } public static boolean d(String str) { if (!Charset.forName("US-ASCII").newEncoder().canEncode(str) || str.length() < 2 || str.length() > 256 || str.charAt(0) != ':') { return false; } if (Character.isLowerCase(str.charAt(1)) || Character.isDigit(str.charAt(1))) { return true; } return false; } public static C5839xw0 e(NdefMessage ndefMessage) { C6187zw0 zw0; NdefRecord[] records = ndefMessage.getRecords(); C5839xw0 xw0 = new C5839xw0(); ArrayList arrayList = new ArrayList(); for (NdefRecord ndefRecord : records) { short tnf = ndefRecord.getTnf(); C6187zw0 zw02 = null; if (tnf != 0) { if (tnf != 1) { if (tnf == 2) { String str = new String(ndefRecord.getType(), "UTF-8"); byte[] payload = ndefRecord.getPayload(); zw0 = new C6187zw0(); zw0.b = 0; zw0.c = "mime"; zw0.d = str; zw0.h = payload; } else if (tnf == 3) { zw02 = b(ndefRecord.toUri(), true); } else if (tnf == 4) { String str2 = new String(ndefRecord.getType(), "UTF-8"); byte[] payload2 = ndefRecord.getPayload(); zw0 = new C6187zw0(); zw0.b = 1; zw0.c = str2; zw0.h = payload2; zw0.i = c(payload2); } else if (tnf == 5) { byte[] payload3 = ndefRecord.getPayload(); zw02 = new C6187zw0(); zw02.b = 0; zw02.c = "unknown"; zw02.h = payload3; } } else if (Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_URI)) { zw02 = b(ndefRecord.toUri(), false); } else if (Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_TEXT)) { byte[] payload4 = ndefRecord.getPayload(); if (payload4.length != 0) { zw0 = new C6187zw0(); zw0.b = 0; zw0.c = "text"; zw0.f = (payload4[0] & 128) == 0 ? "utf-8" : "utf-16"; int i = payload4[0] & 63; zw0.g = new String(payload4, 1, i, "US-ASCII"); int i2 = i + 1; if (i2 <= payload4.length) { zw0.h = Arrays.copyOfRange(payload4, i2, payload4.length); } } } else if (Arrays.equals(ndefRecord.getType(), NdefRecord.RTD_SMART_POSTER)) { byte[] payload5 = ndefRecord.getPayload(); zw02 = new C6187zw0(); zw02.b = 0; zw02.c = "smart-poster"; zw02.h = payload5; zw02.i = c(payload5); } else { String str3 = ':' + new String(ndefRecord.getType(), "UTF-8"); if (d(str3)) { byte[] payload6 = ndefRecord.getPayload(); C6187zw0 zw03 = new C6187zw0(); zw03.b = 2; zw03.c = str3; zw03.h = payload6; zw03.i = c(payload6); zw02 = zw03; } } zw02 = zw0; } else { zw02 = new C6187zw0(); zw02.b = 0; zw02.c = "empty"; zw02.h = new byte[0]; } if (!(zw02 == null || ndefRecord.getTnf() == 0)) { zw02.e = new String(ndefRecord.getId(), "UTF-8"); } if (zw02 != null) { arrayList.add(zw02); } } C6187zw0[] zw0Arr = new C6187zw0[arrayList.size()]; xw0.b = zw0Arr; arrayList.toArray(zw0Arr); return xw0; } public static NdefMessage f(C5839xw0 xw0) { try { ArrayList arrayList = new ArrayList(); int i = 0; while (true) { C6187zw0[] zw0Arr = xw0.b; if (i < zw0Arr.length) { arrayList.add(g(zw0Arr[i])); i++; } else { NdefRecord[] ndefRecordArr = new NdefRecord[arrayList.size()]; arrayList.toArray(ndefRecordArr); return new NdefMessage(ndefRecordArr); } } } catch (UnsupportedEncodingException | IllegalArgumentException | C5080tb0 unused) { throw new C5080tb0(); } } /* JADX INFO: Can't fix incorrect switch cases order, some code will duplicate */ /* JADX WARNING: Code restructure failed: missing block: B:113:0x01b9, code lost: throw new defpackage.C5080tb0(); */ public static NdefRecord g(C6187zw0 zw0) { int indexOf; char c; byte[] bArr; int i = zw0.b; int i2 = 0; byte[] bArr2 = null; if (i == 0) { String str = zw0.c; Objects.requireNonNull(str); switch (str.hashCode()) { case -1804833327: if (str.equals("smart-poster")) { c = 0; break; } c = 65535; break; case -1135234023: if (str.equals("absolute-url")) { c = 1; break; } c = 65535; break; case -284840886: if (str.equals("unknown")) { c = 2; break; } c = 65535; break; case 116079: if (str.equals("url")) { c = 3; break; } c = 65535; break; case 3351604: if (str.equals("mime")) { c = 4; break; } c = 65535; break; case 3556653: if (str.equals("text")) { c = 5; break; } c = 65535; break; case 96634189: if (str.equals("empty")) { c = 6; break; } c = 65535; break; default: c = 65535; break; } switch (c) { case 0: String str2 = zw0.e; C5839xw0 xw0 = zw0.i; if (xw0 != null) { ArrayList arrayList = new ArrayList(); boolean z = false; boolean z2 = false; boolean z3 = false; boolean z4 = false; while (true) { C6187zw0[] zw0Arr = xw0.b; if (i2 < zw0Arr.length) { C6187zw0 zw02 = zw0Arr[i2]; if (zw02.c.equals("url")) { if (!z) { z = true; } else { throw new C5080tb0(); } } else if (zw02.c.equals(":s")) { if (!z2 && zw02.h.length == 4) { z2 = true; } } else if (zw02.c.equals(":t")) { if (!z3) { z3 = true; } else { throw new C5080tb0(); } } else if (zw02.c.equals(":act")) { if (z4 || zw02.h.length != 1) { break; } else { z4 = true; } } try { arrayList.add(g(xw0.b[i2])); i2++; } catch (UnsupportedEncodingException | IllegalArgumentException | C5080tb0 unused) { throw new C5080tb0(); } } else if (z) { NdefRecord[] ndefRecordArr = new NdefRecord[arrayList.size()]; arrayList.toArray(ndefRecordArr); NdefMessage ndefMessage = new NdefMessage(ndefRecordArr); byte[] bArr3 = NdefRecord.RTD_SMART_POSTER; if (str2 != null) { bArr2 = AbstractC2742g7.d(str2); } return new NdefRecord(1, bArr3, bArr2, ndefMessage.toByteArray()); } else { throw new C5080tb0(); } } throw new C5080tb0(); } throw new C5080tb0(); case IWebApkApi.Stub.TRANSACTION_getSmallIconId: return a(zw0.h, zw0.e, true); case IWebApkApi.Stub.TRANSACTION_notifyNotification: String str3 = zw0.e; if (str3 == null) { bArr = null; } else { bArr = AbstractC2742g7.d(str3); } return new NdefRecord(5, null, bArr, zw0.h); case IWebApkApi.Stub.TRANSACTION_cancelNotification: return a(zw0.h, zw0.e, false); case IWebApkApi.Stub.TRANSACTION_notificationPermissionEnabled: String str4 = zw0.d; String str5 = zw0.e; byte[] bArr4 = zw0.h; String normalizeMimeType = Intent.normalizeMimeType(str4); if (normalizeMimeType.length() != 0) { int indexOf2 = normalizeMimeType.indexOf(47); if (indexOf2 == 0) { throw new IllegalArgumentException("mimeType must have major type"); } else if (indexOf2 != normalizeMimeType.length() - 1) { byte[] d = AbstractC2742g7.d(normalizeMimeType); if (str5 != null) { bArr2 = AbstractC2742g7.d(str5); } return new NdefRecord(2, d, bArr2, bArr4); } else { throw new IllegalArgumentException("mimeType must have minor type"); } } else { throw new IllegalArgumentException("mimeType is empty"); } case IWebApkApi.Stub.TRANSACTION_notifyNotificationWithChannel: String str6 = zw0.e; String str7 = zw0.g; String str8 = zw0.f; byte[] bArr5 = zw0.h; if (str7 == null || str7.isEmpty()) { throw new IllegalArgumentException("lang is invalid"); } else if (str8 == null || str8.isEmpty()) { throw new IllegalArgumentException("encoding is invalid"); } else { byte[] bytes = str7.getBytes(StandardCharsets.US_ASCII); if (bytes.length < 64) { byte length = (byte) bytes.length; if (!str8.equals("utf-8")) { length = (byte) (length | Byte.MIN_VALUE); } ByteBuffer allocate = ByteBuffer.allocate(bytes.length + 1 + bArr5.length); allocate.put(length); allocate.put(bytes); allocate.put(bArr5); byte[] bArr6 = NdefRecord.RTD_TEXT; if (str6 != null) { bArr2 = AbstractC2742g7.d(str6); } return new NdefRecord(1, bArr6, bArr2, allocate.array()); } throw new IllegalArgumentException("language code is too long, must be <64 bytes."); } case IWebApkApi.Stub.TRANSACTION_finishAndRemoveTaskSdk23: return new NdefRecord(0, null, null, null); default: throw new C5080tb0(); } } else if (i == 1) { String str9 = zw0.c; if (Charset.forName("US-ASCII").newEncoder().canEncode(str9) && !str9.isEmpty() && str9.length() <= 255 && (indexOf = str9.indexOf(58)) != -1 && !str9.substring(0, indexOf).trim().isEmpty()) { String trim = str9.substring(indexOf + 1).trim(); if (!trim.isEmpty() && trim.matches("[a-zA-Z0-9:!()+,\\-=@;$_*'.]+")) { i2 = 1; } } if (i2 != 0) { byte[] bArr7 = zw0.h; if (bArr7.length == 0 || zw0.i == null) { String str10 = zw0.c; String str11 = zw0.e; C5839xw0 xw02 = zw0.i; if (xw02 != null) { try { bArr7 = f(xw02).toByteArray(); } catch (C5080tb0 unused2) { bArr7 = null; } } byte[] d2 = AbstractC2742g7.d(str10.toLowerCase(Locale.ROOT)); if (str11 != null) { bArr2 = AbstractC2742g7.d(str11); } return new NdefRecord(4, d2, bArr2, bArr7); } } throw new C5080tb0(); } else if (i != 2) { throw new C5080tb0(); } else if (!d(zw0.c) || !(zw0.h.length == 0 || zw0.i == null)) { throw new C5080tb0(); } else { String substring = zw0.c.substring(1); String str12 = zw0.e; byte[] bArr8 = zw0.h; C5839xw0 xw03 = zw0.i; if (xw03 != null) { try { bArr8 = f(xw03).toByteArray(); } catch (C5080tb0 unused3) { bArr8 = null; } } byte[] d3 = AbstractC2742g7.d(substring); if (str12 != null) { bArr2 = AbstractC2742g7.d(str12); } return new NdefRecord(1, d3, bArr2, bArr8); } } }